All Versions
Latest Version
Avg Release Cycle
35 days
Latest Release
27 days ago

Changelog History

  • v2.4.1.1

    January 02, 2020
    • ➕ Adds Universal Polar Stereographic (UPS) to UTM system to allow polar region use.
    • ➕ Adds MGRS Polar to MGRS system to allow polar region use.
    • 🗄 Deprecates WithinCoordinateSystemBounds properties for UTM/MGRS systems. This change is possibly breaking for users who rely on this property to determine UTM/MGRS boundaries.

    ⏱ There will no longer be boundaries when operating in the UTM and MGRS systems. A new property named SystemType has been added to both the UniversalTransverseMercator and MilitaryGridReferenceSystem classes. SystemType may be checked to determine if polar regions have been entered (previously WithinCoordinateSystemBounds). Because both systems no longer have limitation, WithinCoordinateSystemBounds will always return true until its scheduled removal.


    //POLAR REGION COORDINATECoordinate c = new Coordinate(-85,10);Console.WriteLine(c.UTM.SystemType); //UPS;Console.WriteLine(c.MGRS.SystemType); //MGRS\_Polar;Console.WriteLine(c.UTM); //B 2096454mE 2547018mNConsole.WriteLine(c.MGRS); //B AT 96454 47018

    US ARMY TEC-SR-7 1996 was referenced for UPS/MGRS POLAR conversions. The formulas have been discovered to suffer accuracy loss during convert backs (UPS/MGRS POLAR to GEODETIC LAT/LONG). This accuracy loss ranges from 0-33 meters below the 88th parallel and up to 2.2 kilometers between the 88th parallel and the poles. Ensure this precision meets your requirements before using.

    🚀 Formulas will be improved upon in future releases.

  • v2.3.1.1

    November 05, 2019
    • Coordinates may now operate in local / UTC offset time.
    • 🐎 Greatly improves local time conversion performance. Benchmarks now match UTC calculation benchmarks.
    • Simplifies local time conversion calls.
    • 🗄 Deprecates legacy local time calls.
    • ⬇️ Reduces GeoDate property change overhead.
    • Minor EagerLoad_Extensions improvements.
    • 📜 Parser improvements. Geodetic coordinates will now successfully parse if latitudes are before longitudes in string. UTM single strings will now parse.
    • Developer Guide, Celestial section changes to match new and improved methods.
    • 🆓 License modification to allow for free commercial use license issuance for certain use cases.
    • 📦 Split license packed with Nuget package.
    • ✂ Removes .pdb files from pack.

    Example of Coordinate local time operation.

    //EST Date 21-MAR-2019 @ 07:00 AMDateTime d = new DateTime(2017,3,21,7,0,0);Coordinate c = new Coordinate(40.57682, -70.75678, d);//Coordinate still assumes the date is UTC, so we must specify the local offset hours.c.Offset = -4; //EST is UTC -4 hoursc.CelestialInfo.SunRise.ToString(); //Outputs 3/21/2017 06:45:00 AM
  • v2.2.2.1

    October 09, 2019

    ➕ Adds eager loading extensions to allow for finer performance tweaks. For example if you only need solar times, you may eager load solar calculations only. This will reduce benchmarks greatly.


    //Create EagerLoad object with Celestial turned onEagerLoad el = new EagerLoad(EagerLoadType.Celestial);//Set EagerLoad Extensions to load Sun Cycle only.el.Extensions = new EagerLoad\_Extensions(EagerLoad\_ExtensionsType.Solar\_Cycle);//Create Coordinate with eager load settingsCoordinate coord = new Coordinate(45.34, 65.47, DateTime.Now, el);

    🐎 More information may be found on the websites performance page.

  • v2.2.1.1

    August 30, 2019

    -UTM available precision increased.
    📜 -MGRS parser bug fix (some formats not parsing correctly).
    📜 -MGRS parser improvement (single string format will now parse).

    🚀 This version was quickly released after v2.1.1.1 due to planned improvements and the need to quickly fix a bug in the parser. The bug has been present in the parser since it's adoption. Tests have been adjusted to catch similar bugs in the future.

    This version received a minor increment due to the UTM precision change possibly effecting string outputs of UTM Easting and Northing values. Users will be required to determine their own rounding if plugging into those value directly and if desired.

  • v2.1.1.1

    August 15, 2019

    🔦 Exposes more efficient UTM/MGRS to Signed Degree Methods