GeographicLib is a small set of C++ classes for performing conversions between geographic, UTM, UPS, MGRS, geocentric, and local cartesian coordinates, for gravity (e.g., EGM2008), geoid height, and geomagnetic field (e.g., WMM2010) calculations, and for solving geodesic problems. (The library may be used from .NET applications using the NETGeographicLib wrapper library.) It is a suitable replacement for the core functionality provided by geotrans. The library is licensed under the MIT/X11 License; see LICENSE.txt for the terms.