|File Search||Catalog||Content Search|
geotranz-libs - GEOgraphic coordinates TRANslator (runtime libraries)… more info»
GEOTRANS Release Notes Release 2.0.2 - November 1999 1. The datum parameter file 3_param.dat was changed to correct an error in the latitude bounds for the NAD 27 Canada datum. 2. The MGRS module was changed to make the final latitude check on MGRS to UTM conversions sensitive to the precision of the input MGRS coordinate string. The lower the input precision, the more "slop" is allowed in the final check on the latitude zone letter. This is to handle an issue raised by some F-16 pilots, who truncate MGRS strings that they receive from the Army. This truncation can put them on the wrong side of a latitude zone boundary, causing the truncated MGRS string to be considered invalid. The correction causes truncated strings to be considered valid if any part of the square which they denote lies within the latitude zone specified by the third letter of the string. Release 2.0.3 - April 2000 1. Problems with the GEOTRANS file processing capability, including problems reading coordinate system/projection parameters, and problems with some coordinates being skipped. Note that spaces must separate individual coordinate values. 2. The Bonne projection module has been changed to return an error when the Origin Latitude parameter is set to zero. In the next release, the Sinusoidal projection will be used in this situation. 3. Reported errors in certain cases of conversions between geodetic and MGRS have been corrected. The error actually occurred in the formatting of the geodetic output. 4. The Equidistant Cylindrical projection parameter that was previously called Origin Latitude has been renamed to Standard Parallel, which more correctly reflects its role in the projection. The Origin Latitude for the Equidistant Cylindrical projection is always zero (i.e., the Equator). Error messages and documentation were updated accordingly. Note that the renaming of this parameter is the only change to the external interface of the GEOTRANS Engine in this release. 5. An error in the method selection logic for datum transformations, in the Datum module, has been corrected. This error caused the Molodensky method to be used when transforming between the two 7-parameter datums (EUR-7 and OGB-7) and WGS 84. 6. The datum parameter file 3_param.dat was changed to correct the names of several South American (S-42) datums. 7. A leftover debug printf statement in the Geoid module was removed. 8. Several multiple declaration errors that prevented the Motif GUI source code from being compiled successfully using the Gnu g++ compiler were corrected. Additional comments were added to the make file for the GEOTRANS application to facilitate switching between Sun and Gnu compilers. 9. Comments were also added to the make file for the GEOTRANS application concerning locating the libXpm shared object library. This library, which supports the use of X Window pixmaps, was moved to /usr/local/opt/xpm/lib under Solaris 2.6. 10. Documentation for the Local Cartesian module was corrected so that this coordinate system is no longer referred to as a projection. 11. The usage example in the GEOTRANS Engine Reuse Manual was corrected so that it now compiles successfully. Release 2.1 - June 2000 1. The geoid separation file has been converted from text to binary form and renamed to egm96.grd to better reflect its implementation of the Earth Gravity Model 1996. The new binary file is less than half the size of the text file (~4MB vs ~10MB), and is loaded much more quickly when GEOTRANS is started. 2. Inverse flattening is now used as a primary ellipsoid parameter, along with the semi-major axis, instead of the semi-minor axis. Previously, the inverse flattening was computed from the semi-major and semi-minor axes. This is a more correct approach and improves overall accuracy slightly. 3. User-defined datums and ellipsoids can now be deleted. A user-defined ellipsoid can only be deleted if it is not used by any user-defined datum. 4. Additional datum and ellipsoid parameter functions have been added to the external interface of the GEOTRANS Engine, for use by applications. 5. For Windows, a GEOTRANS dynamically linked library (DLL) is now provided which includes the GEOTRANS Engine and all of the DT&CC modules. A version of the GEOTRANS application, geotrans2d.exe, which uses the DLL is also provided. Similarly, for UNIX, a GEOTRANS shared object (.so) library is provided, along with a version of the GEOTRANS application, geotrans2d, which uses the shared object library. 6. The Bonne projection now defaults to the Sinusoidal projection when the origin latitude is zero. 7. A "No Height" option has been added for Geodetic coordinates, as an alternative to "Ellipsoid Height" and "Geoid/MSL Height". When "No Height" is selected on input, the contents of the Height field is ignored. When "No Height" is selected on output, no Height value is output. 8. Three new projections have been added: Azimuthal Equidistant, (Oblique) Gnomonic, and Oblique Mercator. The only difference between Gnomonic and Oblique Gnomonic is the value of the original latitude parameter. 9. The Windows and Motif GUIs have been updated to make the screen layouts more consistent. Bidirectional conversion between the upper and lower panels is now supported, using two Convert buttons (Upper-to-Lower and Lower-to-Upper). Error values are shown separately for each panel. 10. A bug in the MGRS module that occasionally caused 100km errors was corrected. Easting and northing values greater than 99999.5 (i.e., less then 1/2m from the eastern or northern boundary of a 100km square) were being set to zero, but not moved into the adjacent 100km square. These values are now rounded to 99999. 11. Documentation and on-line help has been updated to reflect all of the above enhancements. Release 2.2 - September 2000 1. The datum code for WGS 72 has been corrected from "WGD" to "WGC". 2. The default initial output coordinate system type has been changed from Mercator to UTM. 3. A bug in the Windows GUI that prevented degrees/minutes and decimal degrees formats from being selected has been corrected. 4. In the Windows GUI, the initial default value for inverse flattening and the associated label in the Create Ellipsoid dialog box have been corrected. 5. A bug in the Windows GUI that allowed multiple Geodetic Height type radio buttons to be selected in the File Processing dialog box has been corrected. 6. Diagrams showing MGRS grid zone, band, and 100,000m square layouts have been added to the Users' Guide and the on-line help. 7. An error in the implementation of Oblique Mercator has been corrected. 8. Four new projections have been added: Ney's (Modified Lambert Conformal Conic), Stereographic, British National Grid, and New Zealand Map Grid. 9. A prototype Java GUI has been added which runs on both Windows and UNIX platforms. It requires a Java run-time environment. To run it on a Windows platform, go to the /geotrans2/win95 directory and double click on the file geo_22.jar. To run it on a Solaris platform, cd to the /geotrans2/unix directory and enter the command: make -f javamake. It may be necessary to edit the javamake file to point to the location of the Java run-time environment on your system. Release 2.2.1 - June 2001 1. Fixed problem(s) in Local Cartesian conversions. 2. Corrected a rounding problem in MGRS coordinates when the output precision was set coarser than 1m (10m, 100m, etc.), and the point being converted rounded to the eastern or northern edge of a 100,000m square. An illegal MGRS string could be produced, with an odd number of digits including a "1" followed by one or more zeros. This was corrected by rounding the UTM easting or northing BEFORE determining the correct 100,000m square. 3. Corrected a very old error in the determination of the 100,000m square from a UPS easting in the easternmost part of the south polar zone. 4. Added more flexible support for delimiters in input files (commas, tabs, spaces) 5. Corrected a problem in reporting invalid northing errors in UTM. 6. Correct an example in the Polar Stereo reuse manual with Latitude of True Scale erroneously set to 0.0. 7. Removed an invalid Central Meridian line from the header of the Mollweide example input file. 8. Added a special F-16 Grid Reference System, a special version of MGRS. 9. Allowed 90% CE, 90% LE, and 90% SE accuracy values for input coordinates to be specified. These are used, along with datum transformation accuracy information, in deriving the output coordinate accuracy values. 10. Added a pull-down menu of coordinate sources, including GPS, maps, and digital geospatial data which can be selected to automatically set input accuracy values. 11. Improved the Java GUI to be fully functional, including support for file processsing and improvements in its appearance. Release 2.2.2 - February 2002 1. Added two new datums from Amendment 1 to NIMA TR8350.2 (Jan 2001) to 3_param.dat file: - Korean Geodetic Datum 1995 (KGS) - SIRGAS, South America (SIR) Corrected ellipsoid code errors in 3_param.dat file: - Ellipsoid used with TIL datum changed from EA to EB, - Ellipsoid used with IND-P datum changed from EA to EF. 2. Corrected an "off-by-one" error in the datum index validity check function in the GEOTRANS engine, which prevented the last datum in the pull-down list from being used. The Java GUI reported this error, but the Windows and Motif GUIs did not. 3. Processing of input coordinate files was made more flexible and forgiving: - Case sensitivity of keywords and name strings was eliminated. - Height values with geodetic coordinates were made optional, defaulting to zero. - Coordinate reference system names were made consistent with the GUI pull-down menus. - File processing error messages were improved. 4. A warnings count was added to the file processing GUI. 5. Geodetic height fields are grayed out and the No Height selection is forced whenever 3D conversion is not feasible. For 3D conversion to be feasible, Geodetic, Geocentric, or Local Cartesian must be selected on both panels. For file processing, the output Geodetic height field is grayed out and the No Height selection is forced whenever the input coordinate reference system is not a 3D system. 6. File header generation, using a modified version of the File Processing GUI, was added. (Java GUI Only) 7. Some results of the review of GEOTRANS by NIMA G&G were implemented: - In the User�s Guide (and on-line help), the description of the use of 3-step method, rather than Molodenski, in polar regions was reworded. - In the User's Guide (and on-line help), the description of how to specify Lambert Conformal Conic projection with one standard parallel was clarified. - UTM zone fields were enabled independent of the state of the Override buttons, with default values of zero, and the valid range of zone numbers (1-60) was added to the zone field labels. - In the Sources pull-down menus, the values for GPS PPS and GPS SPS were corrected to be the same, reflecting the shutting off of GPS selective availability (SA). - The words �Warning:� or �Error:�, as appropriate, were explicitly included in all messages output by the GUIs. Release 2.2.3 - February 2003 There were no changes made to the external interfaces of the GEOTRANS libraries. 1. The ellipsoid (ellipse.dat) and datum (3_param.dat) files were updated to correct several typos. Dates were added to all ellipsoid names. 2. A problem in the MGRS module (mgrs.c) was corrected. This problem occurred only when converting from geodetic to MGRS coordinates that round to the centerline of zone 31V. This zone is �cut in half�, such that its centerline is also its eastern boundary. Points that are rounded up (eastward) to this boundary are considered to lie in zone 32V. 3. An error in the Local Cartesian module (loccart.c) was corrected to properly take into account the longitude of the local Cartesian coordinate system origin in converting between geocentric and local Cartesian coordinates. 4. A possible problem in the Transverse Mercator module (tranmerc.c) concerning projections at the poles was investigated. Points at the poles are projected when the Transverse Mercator module is initialized in order to determine the range of valid inputs for the inverse projection. The tangent of the latitude is calculated, which should be infinite at the poles. Investigation determined that the tangent functions for both Windows and Solaris actually return very large values in this case, which result in the expected behavior. However, to avoid this problem on other platforms, the maximum valid latitude for the Transverse Mercator projection was reduced from 90 to 89.99 degrees. 5. A reported incompatibility between GEOTRANS 2.2.2 and version 4 of the Boeing Autometric EDGE Viewer on Windows platforms was investigated. This version of the EDGE Viewer includes the GEOTRANS 2.0.3 libraries. When the EDGE Viewer is installed, it sets the GEOTRANS environment variables to reference the directory C:/Program Files/Autometric/EDGEViewer/Data/GeoTrans. This overrides the default setting in the GEOTRANS application, causing it to look for its required data files in the EDGE Viewer directory. The incompatibility arises from the fact that the Earth Gravity Model 1996 geoid separation file was renamed and changed from text to binary form in GEOTRANS 2.1, which reduced its size from 10MB to 4MB. When the newer binary file is not found in the EDGE data directory, the GEOTRANS application fails to initialize successfully. Placing a copy of the binary geoid separation file (egm96.grd) into the EDGE Viewer data directory eliminates the problem. A recent update to the EDGE Viewer eliminates the problem by using a more recent version of the GEOTRANS libraries. Therefore no changes to the GEOTRANS software were necessary. 6. The source data accuracy values for GPS PPS and SPS modes were updated from 10m to 20m. 7. The Linear (i.e., vertical) Error (LE) and Spherical Error (SE) fields are now grayed out whenever a conversion is not three-dimensional. Release 2.2.4 - August 2003 There were no changes made to the external interfaces of the GEOTRANS libraries. 1. Minor changes were made to source code to eliminate all compilation warnings. These changes involved the Ellisoid module, the GEOTRANS engine, GEOTRANS application Windows GUI, and GEOTRANS application support source code file. 2. A bug in the MGRS module was corrected. This bug caused MGRS coordinates located in small triangular areas north of 64S latitude, and south of the 2,900,000 northing line, to fail to convert correctly to UTM. 3. The MGRS module was corrected so that the MGRS "AL" 100,000m square pattern is used with the Bessel 1841 Namibia (BN) ellipsoid. On-line help was corrected to be consistent with this change. 4. The MGRS module was updated to eliminate inconsistencies in the conversion of points located on UTM zone and MGRS latitude band boundaries. 5. The MGRS module was reorganized internally to improve the clarity and efficiency of the source code. The external interface of the MGRS module was not changed. Release 2.2.4 - August 2003 There were no changes made to the external interfaces of the GEOTRANS libraries. 1. Minor changes were made to source code to eliminate all compilation warnings. These changes involved the Ellisoid module, the GEOTRANS engine, GEOTRANS application Windows GUI, and GEOTRANS application support source code file. 2. A bug in the MGRS module was corrected. This bug caused MGRS coordinates located in small triangular areas north of 64S latitude, and south of the 2,900,000 northing line, to fail to convert correctly to UTM. 3. The MGRS module was corrected so that the MGRS "AL" 100,000m square pattern is used with the Bessel 1841 Namibia (BN) ellipsoid. On-line help was corrected to be consistent with this change. 4. The MGRS module was updated to eliminate inconsistencies in the conversion of points located on UTM zone and MGRS latitude band boundaries. 5. The MGRS module was reorganized internally to improve the clarity and efficiency of the source code. The external interface of the MGRS module was not changed. Release 2.2.4 - August 2003 There were no changes made to the external interfaces of the GEOTRANS libraries. 1. Minor changes were made to source code to eliminate all compilation warnings. These changes involved the Ellisoid module, the GEOTRANS engine, GEOTRANS application Windows GUI, and GEOTRANS application support source code file. 2. A bug in the MGRS module was corrected. This bug caused MGRS coordinates located in small triangular areas north of 64S latitude, and south of the 2,900,000 northing line, to fail to convert correctly to UTM. 3. The MGRS module was corrected so that the MGRS "AL" 100,000m square pattern is used with the Bessel 1841 Namibia (BN) ellipsoid. On-line help was corrected to be consistent with this change. 4. The MGRS module was updated to eliminate inconsistencies in the conversion of points located on UTM zone and MGRS latitude band boundaries. 5. The MGRS module was reorganized internally to improve the clarity and efficiency of the source code. The external interface of the MGRS module was not changed. Release 2.2.5 - June 2004 There were no changes made to the external interfaces of the GEOTRANS libraries. 1. A minor correction was made in the Datum module, to correct an "off-by-one" error in the Valid_Datum function, which caused it to return a warning when the last 3-parameter datum was accessed. 2. A minor correction was made in the Round_DMS function, in the common application GUI support software, which caused incorrect geodetic coordinate values to be displayed when converting to degrees with a precision of .0001. 3 The 3-parameter datum file, 3_param.dat, was updated to reflect new parameter values for the MID (MIDWAY ASTRO 1961, Midway Is.) datum, which went into effect in June 2003. The longitude limits for the NAS-U (North American 1927, Greenland), the DAL (Dabola, Guinea) and the TRN (Astro Tern Island (Frig) 1961 datums were also corrected. Release 2.2.6 - June 2005 1. A minor correction was made in the Get_Geoid_Height function in the GEOID module, which does bilinear interpolation of EGM96 geoid separation values. The error caused the specified point to be shifted in longitude, mirrored around the east-west midline of the 15-minute grid cell that contains it. 2. The 3-parameter datum file, 3_param.dat, was updated to correct the latitude and longitude limits for the DID (Deception Island), EUR-S (European 1950, Israel and Iraq), and KEG (Kerguelen Island) datums. 3. A minor correction was made in the Convert_Orthographic_to_Geodetic function in the ORTHOGR module to use the two-argument arctangent function (atan2) rather than the single-argument arctangent function (atan). This avoids sign errors in results near the poles. 4. A minor correction was made in the Convert_Albers_to_Geodetic function in the ALBERS module to avoid infinite loops when the iterative solution for latitude fails to converge. After 30 iterations, the function now returns an error status. 5. Support was added for the Lambert Conformal Conic projection with one standard parallel. A new LAMBERT_1 module was added, and the LAMBERT_2 module was renamed (from LAMBERT) and reengineered to use the new LAMBERT_1 module. Backward compatibility was maintained at the DT&CC and GEOTRANS Engine levels. However, all existing functions that include "Lambert", rather than "Lambert1" or "Lambert2", in their names are now considered to be deprecated, and will be removed in a future update. 6. The GEOTRANS application GUI was enhanced to help users avoid incompatible combinations of coordinate systems and datums by color coding the conversion buttons. Red indicates that the selected coordinate systems and datums are not compatible with one another, and that an error message will result from any attempted conversion operation. Yellow indicates that the selected datums have disjoint areas of validity, adn that a warning message will result from any attempted conversion operation. 7. A correction was made to the Geodetic_Shift_WGS72_To_WGS84 and Geodetic_Shift_WGS72_To_WGS84 functions in the DATUM module to wrap longitude values across the 180 degree line and wrap latitude values over the poles. 8. File processing examples in the online help, and in the /examples subdirectory, were improved to use more realistic coordinates, and additional examples were added. 9. The GEOTRANS application GUI was enhanced to provide an option to display leading zeroes on output geodetic coordinate values, including degrees (three digits for longitude, two digits for latitude), minutes (two digits), and seconds (two digits). Release 2.3 - March 2006 1. The 3-parameter datum file, 3_param.dat, was updated to correct the latitude and longitude limits for DID (Deception Island), switching longitude order, and JOH (Johnston Island) datums. 2. An �off-by-one� error in datum indexing in the JNI interface was corrected. 3. Support for Red Hat Linux (Red Hat Professional 9.3 and later) and for SuSE Linux (SuSE Linux 9 and later) was added. 4. A reported potential error in file name string underflow/overflow in the Ellipsoid, Datum, and Geoid modules was corrected. 5. Support for multithreading was improved by adding mutual exclusion zones around code that opens and reads data files in the Ellipsoid, Datum, and Geoid modules. 6. Support for three additional gravity-related height models was added, based on requirements from the US military services: a. EGM96 with variable grid spacing and natural spline interpolation b. EGM84 with 10 degree by 10 degree grid spacing and bilinear interpolation c. EGM84 with 10 degree by 10 degree grid spacing and natural spline interpolation These are in addition to EGM96 with 15-minute grid spacing and bilinear interpolation, which was previously supported. Release 2.4 - September 2006 1. The 3-parameter datum file, 3_param.dat, was updated to correct two spelling errors (Columbia -> Colombia, Phillipines -> Philippines). 2. The 3-parameter datum file, 3_param.dat, was updated to adjust the limits for several local datums in the 3-parameter datum file (ADI-E, CAC, CAI, COA, HJO, ING-A, KEG, LCF, NDS, SAE, SAN-A, SAN-C, VOI, and VOR). 3. All required ellipsoid, datum, and geoid data files to a /data subdirectory to eliminate the need for duplicate copies. 4. Error reporting was improved when required ellipsoid, datum, and/or geoid data files cannot be located at initialization. 5. In the Geoid module, problems were corrected in the interpolation of geoid separation values using a variable-resolution grid when converting to or from MSL-EGM96-VG-NS Height. 6. In the MGRS module, a problem was corrected in rounding up to the equator when converting to MGRS. 7. Support was added for the U.S. National Grid (USNG). 8. Support was added for the Global Area Reference System (USNG). Release 2.4.1 - March 2007 1. Corrected two minor errors (6cm and 1cm) in the values contained in the EGM84 geoid separation file. 2. Improved error handling and reporting in the Transverse Mercator, UTM, and MGRS modules at extreme northern and southern latitudes, for points that are more than 9 degrees, but less than 400km, from the central meridian. 3. Modified the US National Grid (USNG) module to truncate, rather than round, USNG coordinates as required by the USNG specification. 4. Corrected an error in the calculation of valid ranges for input easting and northing coordinates in the Mercator module, and several other map projection modules. This caused valid inputs to be rejected when extremely large (e.g., 20,000,000m) false easting or false northing values were specified for those map projections. 5. Improved error handling and reporting in the Lambert Conformal Conic modules in cases of extremely small scale factor values. 6. Corrected an error in the MGRS module that occurred when a point rounded up to the eastern boundary of the non-standard zone 31V in the northern Atlantic, which is considered to be part of zone 32V. Release 2.4.2 - August 2008 1. Corrected an error in the MGRS and USNG modules that incorrectly mapped 100,000m square row letters to northing values in the northern portion of the X latitude band (northings > 9,000,000m). 2. Revised the handling of warnings reported by the Transverse Mercator (TM) module for points located more than 9 degrees from the central meridian, when the TM module is invoked by the UTM and MGRS modules, so that UTM or MGRS error checking takes precedence. 3. Added datum domain checks for those cases where no datum transformations are performed. Previously, coordinates were not checked against the valid domain of the datum when the input datum and output datum were identical. 4. The default accuracy estimate values for DTED Level 1 and DTED Level 2 were updated to be consistent with MIL-PRF-89020B, Performance Specification, Digital Terrain Elevation Data (DTED), 23 May 2000, replacing the values from MIL-PRF-89020A, 19 Apr 1996. Default spherical accuracy estimate values for all relevant data sources were updated to reflect a more accurate relationship to the corresponding circular (horizontal) accuracy estimates. 5. In the GEOTRANS application, added commands to save the current selections and options settings as the defaults, and to reset the current selections and options settings from the defaults. 6. In the GEOTRANS application, added capabilities to create and delete user-defined 7-parameter datums. 7. Corrected a problem with the checking of input coordinates against the valid region for a local datum when a longitude value greater than +180 degrees was entered. 8. Corrected the valid regions for the PUK and NAR-E datums to use a range of longitudes that span the +180/-180 degree line.