Custom Ellipsoids

Manifold uses ellipsoids in projection calculations. See the The Earth as an Ellipsoid for more information. The definitions of ellipsoids available to Manifold are compiled into the product. User-supplied definitions may be loaded from .xml files found in the Config folder. If desired, users can add their own ellipsoids to incorporate specialized, historical or local ellipsoids into Manifold.

 

Ellipsoids are defined by .xml files in the following pattern:

 

<xml>

 <ellipsoid>

  <name>My Ellipsoid</name>

  <majorAxis>6377563</majorAxis>

  <invFlattening>299</invFlattening>

 </ellipsoid>

</xml>

 

Rules

 

·      There can be any number of <ellipsoid></ellipsoid> entries within a single XML file between the <xml> tag at the beginning of the file and the </xml> tag at the end of the file.

·      The name string supplied in the <name> attribute is mandatory and must be unique.

·      <majorAxis> is mandatory and is the length of the major axis in meters.

·      <invFlattening> is the value of the inverse flattening. The <invFlattening> attribute may be replaced with by the <eccentricity> attribute specifying the eccentricity of the ellipsoid, or by the <minorAxis> attribute giving the length of the minor axis in meters. A value for the minor axis that is greater than the major axis will be rejected.

 

To utilize newly created or modified ellipsoids place the new or modified .xml file containing the ellipsoids into the Config folder for Manifold (normally C:\Program Files\Manifold System Professional\Config) and restart Manifold.

 

When Manifold launches, the system will scan all .xml files in the Config folder. Any <ellipsoid></ellipsoid> entries found in any of those .xml files will be loaded into the system as available ellipsoids.

 

Example

 

We've created a file in the Config folder called myellipsoids.xml that contains ellipsoids we would like to use with Manifold. These ellipsoids will help us create maps of the Moon and Mars:

 

<xml>

 <ellipsoid>

  <name>Moon</name>

  <majorAxis>1738000</majorAxis>

  < eccentricity>0.058730</eccentricity>

 </ellipsoid>

 <ellipsoid>

  <name>Mars</name>

  <majorAxis>3388000</majorAxis>

  <minorAxis>3388000</minorAxis>

 </ellipsoid>

</xml>

 

When Manifold launches it will see the myellipsoids.xml file in the Config folder and will read it to see what it contains. It will find definitions for ellipsoids named Moon and Mars. The Moon is treated as a true ellipsoid and is defined using a major axis and eccentricity. Mars is a sphere and defined by using the same values for the major axis and the minor axis. The ability to specify an ellipsoid using eccentricity or inverse flattening or minor axis is very handy since the definitions of ellipsoids that are available to us will likely have one of these three parameters in addition to the major axis.

 

See any standard text on computational cartography for detailed discussions of eccentricity and inverse flattening. Inverse flattening is defined as (majorAxis / (major- minorAxis)). Eccentricity is defined as the square root of (1 - (minorAxis / majorAxis)^2).

 

Tech Tip

 

Manifold cannot use any customizations if the .xml files do not contain XML that is exactly correct. A useful test before launching Manifold is to open any newly created or modified .xml file in Internet Explorer. Internet Explorer will show a correct .xml file in a simple text format. If Internet Explorer cannot parse the .xml file, Manifold won't be able to either.