Product: MapInfo Professional
Version: 8.0, 7.8, 7.5 b21, 7.0 b22, 6.5 b19, 6.0, 5.5, 5.0, 4.0
Platform: All Windows Platforms
Category: Projections
Summary:
Custom Datum documentation.
Question:
How to create additional custom datums in MapInfo.
Answer:
Defining Custom Datums/Datum Conversion
A datum is a mathematical description of the earth's shape and orientation. Because the earth's shape is not uniform, there are many different local datums used in different parts of the world. These local datums provide a close approximation to the earth's surface in a particular area.
Each Earth coordinate system uses a specific datum to approximate the earth's surface. If two coordinate systems use different datums, then MapInfo must perform a datum transformation when it converts coordinates from one coordinate system to the other. MapInfo uses the BursaWolfe datum transformation method, which is generally accurate to within 10 meters. (When MapInfo converts between two coordinate systems that use the same datum, no datum transformation is performed, and the results are generally accurate to within 0.1 meter.)
Most coordinate systems use one of MapInfo's predefined datums, listed in the Appendix. If a datum is required that isn't in the list, and the datum's mathematical parameters are known, then the coordinate system can be defined using a custom datum. MapInfo uses the following information to define a datum:
**In case the Greek letters are not displaying correctly, see the MapInfo UserGuide.pdf available on the MapInfo Professional CD.
 An ellipsoid, also called a spheroid. This is an ellipse rotated around its minor axis to form a threedimensional surface. The ellipsoid is described by two mathematical parameters: the length, in meters, of its semimajor axis (denoted by the letter a) and its degree of flattening (denoted by the letter f). MapInfo supports over 40 predefined ellipsoids, which are listed in the table below.
*It is required to use a predefined ellipsoid contained in the following table. If it does not appear here, please contact MapInfo Technical Support with the information including ellipsoid parameters so that it may be included in the next release.
 Three shift parameters specifying the distance, in meters, to shift the ellipsoid along each of its axes. These parameters are usually denoted by dX, dY, and dZ. They may also be denoted by X, Y, and Z, or by u, v, and w.
 Three rotation parameters specifying the angle, in arcseconds, to rotate the ellipsoid around each of its axes. These parameters are usually denoted by E_{X}, E_{Y,} and E_{Z}. They may also be denoted by _{X}, _{Y}, and _{Z}, or by , , and .
 A scale correction factor specifying the amount, in parts per million, to adjust the size of the ellipsoid. This parameter is denoted by the letter m, or sometimes .
 The longitude of the prime meridian, in degrees east of Greenwich. The prime meridian specifies which location on earth is assigned longitude 0°. Most datums use Greenwich as the prime meridian, so this parameter is usually zero. However, some datums use a different location as the prime meridian. For example, the NTF datum uses Paris as its prime meridian, which is 2.33722917 degrees east of Greenwich. If the NTF datum is used in a coordinate system, all longitudes in that coordinate system are relative to Paris instead of Greenwich.
A custom datum can be defined in any coordinate system definition. The Appendix describes how to define a coordinate system. To define a custom datum in a coordinate system, use datum number 9999 followed by the datum parameters, in this order:
9999, EllipsoidNumber, dX, dY, dZ, E_{X}, E_{Y}, E_{Z}, m, PrimeMeridian
Some datums specify only an ellipsoid and shift parameters (dX, dY, dZ), with no rotation parameters, scale correction, or prime meridian. In those cases, use datum number 999 instead of 9999, to simplify the definition: (See Example LD3 below):
999, EllipsoidNumber, dX, dY, dZ
The ellipsoid number must be chosen from the following list. If an ellipsoid needing to be used does not appear on this list, please notify MapInfo Technical Support so that it can be added as an ellipsoid to a future MapInfo release.
Number  Ellipsoid  a  1/f 
9  Airy 1930  6377563.396  299.3249646 
13  Airy 1930 (modified for Ireland 1965)  6377340.189  299.3249646 
2  Australian  6378160.0  298.25 
10  Bessel 1841  6377397.155  299.1528128 
14  Bessel 1841 (modified for Schwarzeck)  6377483.865  299.1528128 
35  Bessel 1841 (modified for NGO 1948)  6377492.0176  299.15281 
36  Clarke 1858  6378293.639  294.26068 
7  Clarke 1866  6378206.4  294.9786982 
8  Clarke 1866 (modified for Michigan)  6378450.047484481  294.9786982 
6  Clarke 1880  6378249.145  293.465 
15  Clarke 1880 (modified for Arc 1950)  6378249.145326  293.4663076 
30  Clarke 1880 (modified for IGN)  6378249.2  293.4660213 
37  Clarke 1880 (modified for Jamaica)  6378249.136  293.46631 
16  Clarke 1880 (modified for Merchich)  6378249.2  293.46598 
38  Clarke 1880 (modified for Palestine)  378300.79  293.46623 
11  Everest 1830  6377276.345  300.8017 
40  Everest 1830 (modified for Kalianpur)  6377301.243  300.80174 
17  Everest 1830 (modified for Kertau)  6377304.063  300.8017 
48  Everest 1830 (modified for West Malaysia)  6377295.664  300.8017 
39  Everest 1830 (modified for Timbalai)  6377298.556  300.8017 
18  Fischer 1960  6378166.0  298.3 
19  Fischer 1960 (modified for South Asia)  6378155.0  298.3 
20  Fischer 1968  6378150.0  298.3 
21  GRS 67  6378160.0  298.247167427 
0  GRS 80  6378137.0  298.257222101 
5  Hayford  6378388.0  297.0 
22  Helmert 1906  6378200.0  298.3 
23  Hough  6378270.0  297.0 
31  IAG 75  6378140.0  298.257222 
41  Indonesian  6378160.0  298.247 
4  International 1924  6378388.0  297.0 
3  Krassovsky  6378245.0  298.3 
32  MERIT 83  6378137.0  298.257 
33  New International 1967  6378157.5  298.25 
42  NWL 9D  6378145.0  298.25 
43  NWL 10D  6378135.0  298.26 
44  OSU86F  6378136.2  298.25722 
45  OSU91A  6378136.3  298.25722 
46  Plessis 1817  6376523.0  308.64 
24  South American  6378160.0  298.25 
12  Sphere  6370997.0  0.0 
47  Struve 1860  6378297.0  294.73 
34  Walbeck  6376896.0  302.78 
25  War Office  6378300.583  296.0 
26  WGS 60  6378165.0  298.3 
27  WGS 66  6378145.0  298.25 
1  WGS 72  6378135.0  298.26 
49  Irish (WOFO)  6377542.178  299.325 
50  Everest (Pakistan)  6377309.613  300.8017 
52  PZ90 (Russia)  6378136.0  298.257839303 
51  ATS 77 (Average Terrestrial System 1977)  6378135.0  298.257 
53  Xian 1980  6378140.0  298.25 
28  WGS 84  6378137.0  298.257223563 
The shift and rotation parameters describe the ellipsoid's orientation in space, as compared to the WGS 84 datum. It's important to make sure that these parameters have the correct signs (positive or negative). Usually, a document describing a local datum will list the parameters required to convert coordinates from the local datum to WGS 84. (This is the same as saying that the parameters were derived by subtracting the local datum from WGS 84.) In that case, use the parameters exactly as they appear in the document. However, if a document that lists parameters for converting coordinates in the opposite direction — from WGS 84 to the local datum — then reverse the signs of the shift, rotation, and scale correction parameters.
It's also very important to list the parameters in the correct order. Some documents list the rotation parameters with E_{Z} first, like this: E_{Z}, E_{Y}, E_{X}. In those cases, reverse the order of the rotation parameters when defining the custom datum. This is especially easy to overlook when the document uses Greek letters to denote the parameters. If the document lists the parameters in order as , , , then reverse their order in the custom datum definition.
Here's an example of a local datum description (LD1) as it might appear in a technical article:
LD1 ellipsoid: International
a 6378388.0 m
f 1 / 297.0
Converting from WGS 84 to LD1
X 93.5 m
Y 103.5 m
Z 123.3 m
_{X} –0.25??
_{Y} 0.11??
_{Z} 0.07??
m –2.1 ppm
This datum uses the International ellipsoid, which is number 4 in the ellipsoid table above. The other parameters describe a conversion from WGS 84 to the local datum, so it is required to reverse their signs. No prime meridian is listed, so assume that Greenwich is used. The custom datum definition in MapInfo would look like this:
9999, 4, 93.5, 103.5, 123.3, 0.25, 0.11, 0.07, 2.1, 0
Insert this string of numbers in place of the datum number in any line in the MAPINFOW.PRJ file. For example, define the following coordinate systems using this custom datum: (NOTE: Strings must be entered on a single line).
”Longitude / Latitude (LD1)”, 1, 9999, 4, 93.5, 103.5, 123.3, 0.25, 0.11, 0.07, 2.1, 0
”UTM Zone 30 (LD1)”, 8, 9999, 4, 93.5, 103.5, 123.3, 0.25, 0.11, 0.07, 2.1, 0, 7, 3, 0, 0.9996, 500000, 0
 The first example is simply the Name of the new coordinate system followed by its Projection number (1) for Longitude\Latitude and then 9999 for a custom datum followed by the datum definition parameters.
 The second example lists the Name, its Projection number (8) for Transverse Mercator, 9999 for a custom datum, the required datum parameters (see above), then the coordinate system components for a UTM projection (Units, Origin Long., Origin Lat., Scale factor, etc.). See Appendix F for UTM components.
Here's another sample local datum description, called LD2 this time:
LD2 ellipsoid: Krassovsky
a 6378245.0 m
f 1 / 298.3
Converting from LD2 to WGS 84
u +24 m
v –123 m
w –94 m
+0.13??
+0.25??
–0.02??
m +1.1 · 10^{6}
This datum uses the Krassovsky ellipsoid, which is number 3 in the ellipsoid table above. It is not required to reverse the signs of the parameters since they describe a conversion from the local datum to WGS 84. However, the rotation parameters are listed with or Z first, so we must reverse the rotation parameters order in the custom datum definition:
9999, 3, 24, 123, 94, 0.02, 0.25, 0.13, 0.0000011, 0
Here's a final example, LD3, that provides only the ellipsoid and shift parameters:
LD3 ellipsoid: Clarke 1880
a 6378249.145 m
f 1 / 293.465
WGS 84 minus local datum LD3
dX –7 m
dY 36 m
dZ 225 m
This datum uses the Clarke 1880 ellipsoid, which is number 6 in the ellipsoid table above. It is not required to reverse the signs of the parameters or worry about the order of the rotation parameters (since they aren't present). In this case, use datum number 999 instead of 9999 in the custom datum definition. These two definitions are equivalent, and use either one as the second example will ignore the zeros for the scale factor and rotation parameters which are not used here:
999, 6, 7, 36, 225
9999, 6, 7, 36, 225, 0, 0, 0, 0, 0
As with the other custom datum definitions, insert one of these custom datum definitions in place of the datum number after the name and projection number in the proper MAPINFOW.PRJ line, followed by the coordinate system components necessary for this projection from the Appendix, as in these examples:
"Longitude / Latitude (LD3)”, 1, 999, 6, 7, 36, 225
”UTM Zone 30 (LD3)”, 8, 999, 6, 7, 36, 225, 7, 3, 0, 0.9996, 500000, 0
Datum Conversion
When converting coordinates from one datum to another, MapInfo has used the Molodensky (3parameter) and BursaWolfe (7parameter) methods. These are generalpurpose methods that can convert coordinates from any datum to any other datum.
After the NAD 83 datum was introduced, NOAA developed a program called NADCON, which stands for North American Datum CONversion. This is a very specialized program that converts coordinates only from NAD 27 to NAD 83 and vice versa. For this specialized task, it's much more accurate than the Molodensky generalpurpose method; NADCON is accurate to about 0.1 meter, and Molodensky is accurate to only 1030 meters. Most U.S. government agencies, including the Census Bureau, have standardized on NADCON for converting between NAD 27 and NAD 83.
Beginning with MapInfo 4.1.2, the NADCON algorithm is used to convert coordinates between NAD 27 and NAD 83 if those coordinates lie within the areas covered by NADCON (United States, Puerto Rico, and the Virgin Islands). If the coordinates lie outside those areas, or if they use datums other than NAD 27 or NAD 83, MapInfo uses the Molodensky or BursaWolfe conversion methods.
Due to the file access required, the NADCON conversion method can be slightly slower than the Molodensky method. If you want to turn off the NADCON conversion, add a “NADCON” entry to the registry. The registry entry should have this path:
HKEY_LOCAL_MACHINE\Software\MapInfo\MapInfo\Common\NADCON
If this entry is set to zero, then the Molodensky conversion method will be used instead of NADCON. If using the 16bit version of MapInfo, add this line to the [MAPINFO COMMON] section in MAPINFO.INI to turn off the NADCON conversion:
NADCON=0
Last Modified: 06/09/2005 11:36:44 AM
