How can I plot Earth (wgs84 Ellipsoid)?

100 visualizzazioni (ultimi 30 giorni)
I have tried
[x,y,z] = wgs84Ellipsoid('meters');
figure
surf(x,y,z)
axis equal
However,
[x,y,z] = wgs84Ellipsoid('meters');
is incorrect ("Too many output arguments")
  2 Commenti
Geoff Hayes
Geoff Hayes il 27 Nov 2017
Matthes - according to https://www.mathworks.com/help/map/ref/wgs84ellipsoid.html the function wgs84ellipsoid returns a referenceEllipsoid object and so the error message makes sense since only one output parameter is possible
E = wgs84ellipsoid('meters');
So that explains the error message. As for trying to draw/plot this, I'm not sure how you would do that (or if it is even possible).
Matthes Müller
Matthes Müller il 30 Nov 2017
Alright, thanks a lot anyway!

Accedi per commentare.

Risposta accettata

Amy Haskins
Amy Haskins il 12 Dic 2017
To just get a sense for the shape of the ellipsoid, you could use the values from the wgs84ellipsoid in conjunction with MATLAB's ellipsoid function as follows:
ellipsoid(0,0,0,E.SemimajorAxis, E.SemimajorAxis, E.SemiminorAxis)
Alternatively, if you want a 3D globe, you could follow the doc example here:
https://www.mathworks.com/help/map/examples/plotting-a-3-d-dome-as-a-mesh-over-a-globe.html
Replacing the grs80 ellipsoid with the one returned by wgs84Ellipsoid.

Più risposte (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by