This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English version of the page.

Note: This page has been translated by MathWorks. Click here to see
To view all translated materials including this page, select Country from the country navigator on the bottom of this page.

Work with Reference Spheroids

Reference spheroids are needed in three main contexts: map projections, curves and areas on the surface of a spheroid, and 3-D computations involving geodetic coordinates.

Map Projections

You can set the value of the Geoid property of a new map axes (which is actually a Spheroid property) using any type of reference spheroid representation when constructing the map axes with axesm. Except in the case of UTM and UPS, the default value is an ellipsoid vector representing the unit sphere: [1 0]. It is also the default value when using the worldmap and usamap functions.

You can reset the Geoid property of an existing map axes to any type of reference spheroid representation by using setm. For example, worldmap always sets up a projection based on the unit sphere but you can subsequently use setm to switch to the spheroid of your choice. To set up a map of North America for use with Geodetic Reference System 1980, for instance, follow worldmap with a call to setm, like this:

ax = worldmap('North America');
setm(ax,'geoid',referenceEllipsoid('grs80'))

When projecting or unprojecting data without a map axes, you can set the geoid field of a map projection structure (mstruct) to any type of reference spheroid representation. Remember to follow all mstruct updates with a second call to defaultm to ensure that all properties are set to legitimate values. For example, to use the Miller projection with WGS 84 in kilometers, start with:

mstruct = defaultm('miller');
mstruct.geoid = wgs84Ellipsoid('km');
mstruct = defaultm(mstruct);

You can inspect the mstruct to ensure that you are indeed using the WGS 84 ellipsoid:

mstruct.geoid
ans = 

referenceEllipsoid with defining properties:

                 Code: 7030
                 Name: 'World Geodetic System 1984'
           LengthUnit: 'kilometer'
        SemimajorAxis: 6378.137
        SemiminorAxis: 6356.75231424518
    InverseFlattening: 298.257223563
         Eccentricity: 0.0818191908426215

  and additional properties:

    Flattening
    ThirdFlattening
    MeanRadius
    SurfaceArea
    Volume

See Map Axes Properties for definitions of the fields found in mstructs.

Curves and Areas

Another important context in which reference spheroids appear is the computation of curves and areas on the surface of a sphere or oblate spheroid. The distance function, for example, assumes a sphere by default, but accepts a reference spheroid as an optional input. distance is used to compute the length of the geodesic or rhumb line arc between a pair of points with given latitudes and longitudes. If a reference spheroid is provided through the ellipsoid argument, then the unit used for the arc length output matches the LengthUnit property of the spheroid.

Other functions for working with curves and areas that accept reference spheroids include reckon, scircle1, scircle2, ellipse1, track1, track2, and areaquad, to name just a few. When using such functions without their ellipsoid argument, be sure to check the individual function help if you are unsure about which reference spheroid is assumed by default.

3-D Coordinate Transformations

The third context in which reference spheroids frequently appear is the transformation of geodetic coordinates (latitude, longitude, and height above the ellipsoid) to other coordinate systems. For example, the geodetic2ecef function, which converts point locations from a geodetic system to a geocentric (Earth-Centered Earth-Fixed) Cartesian system, requires a reference spheroid object (or an ellipsoid vector) as input. And the elevation function, which converts from geodetic to a local spherical system (azimuth, elevation, and slant range) also accepts a reference spheroid object or ellipsoid vector, but uses the GRS 80 ellipsoid by default if none is provided.