Package com.AndrewGray.geoutils

This package contains a collection of classes written by Andrew Gray for the calculation of Great Circles, the manipulation of Lat/Long pairs, and the conversion between Mercator map coordinates.

See:
          Description

Class Summary
GeoConv series of static methods for use by other geoutils classes
GeoMagVar Class calculates the geomagnetic variation at a given LatLong using the IGRF2000 model.
GreatCircle implements various mathematical methods related to Great Circle calculations.
LatLong class defining LatLong data type for storage and manipulation of Latitude/Longitude pairs.
MapPoint Class defines methods to manipulate points on a true mercator map using either their x,y (mercator) coordinates or LatLong.
MercatorMap class defines a notional perfect mercator map with specified width and height.
RhumbLine Collection of algorithms related to Rhumb line (constant true bearing) calculations.
 

Exception Summary
 

Package com.AndrewGray.geoutils Description

This package contains a collection of classes written by Andrew Gray for the calculation of Great Circles, the manipulation of Lat/Long pairs, and the conversion between Mercator map coordinates. These arose from from my publicly available Great Circle calculator which serves as a working demonstration of many of the algorithms defined within this package.

In brief;

LatLong
Defines a class for the storage and manipulation of geographical coordinates represented by Latitudes and Longitudes
GreatCircle
encapsulates various mathematical algorithms for the computation of Great Circles. Methods include those to calculate distance, bearing and track.
RhumbLine
encapsulates various mathematical algorithms for the computation of RhumbLines. RhumbLines are courses of constant bearings and are thus most people's idea of direction to a destination
GeoMagVar
Computes the predicated geomagnetic variation at a given LatLong, date and height. This yields the offset a magnetic compass will typically display from true north.
MercatorMap
Defines a notional Mercator map of a particular width & height. Used for the conversion between LatLongs and Mercator x,y coordinates.
MapPoint
Allows points on a MercatorMap to be defined and converted between LatLongs and x,y coordinates

An application presenting a similar user interface as my publicly available Great Circle calculator might uses these classes thus;

  1. After loading the map image a MercatorMap would be created and sized as per the scaled image
  2. The City MapPoints would be created based on a database of LatLongs
  3. User would select two MapPoints by either selecting points on the map using the mouse (x,y coordinates) or manually entering the latitude and longitude in text fields (LatLong).
  4. The LatLongs of the selected points would be passes to the GreatCircle object which would compute the distance, bearing from origin, and the track of the course. Distance and bearing might then be presented numerically whilst the track is converted back into MapPoints and displayed graphically on the map.

Disclaimer & Warranty
The software is supplied as-is. No warranty, or statement of fitness of purpose is given.

All emphasis is on the user to verify values. In particular, this software should not be used for safety critical applications such as navigation, aeronautics, etc.

In obtaining this software you agree that liability of the copyright holder for damages, including any general, special, incidental or consequential damages arising out of the use or inability to use the software be limited to the purchase cost thereof. This includes but is not limited to loss of data or data being rendered inaccurate or losses sustained by you or third parties or a failure of the software to operate with any other software, even if such holder or other party has been advised of the possibility of such damages.

Copyright © 2004 by Andrew Gray

For more details please contact the author, Andrew Gray.