This project is read-only.

Geographic Framework for .NET

1.0.0 (Build 36356)

This project was formerly a commercial library maintained by the company "GeoFrameworks" for two components it sold (GPS.NET and GIS.NET) from 2004 to 2009. In 2009, GeoFrameworks decided to release the source code for this library in order to assist the open source community. This project contains classes designed to simplify the task of writing Location-Based Services as well as mapping applications. The most frequently used classes in this project are Angle, Latitude, Longitude, and Position. These classes represent coordinates on Earth's surface and provide functions for calculating distance and bearing to other points on Earth. Other classes such as Speed and Distance encapsulate measurements as well as conversions to other unit types.

The entire library is globalized, supporting multiple numeric formats and cultures, and includes design-time type converters to add support for Windows Forms designers. Most classes also support conversion of values to and from string values. For example, the Position class can output values in a specific format and parse formatted values back into an object. This project has a dependency on System.Drawing, making it only suitable for GDI+/Windows Forms applications.

Included Features

  • Supports any culture in any numeric format.
  • Supports formatting of objects to string values and vice-versa.
  • Supports geodetic equations such as calculating distance, bearing, travel time, and minimum travel speed.
  • Supports distance and speed measurements and conversions in Imperical and Metric systems.
  • Provides a base class for writing flicker-free user controls which work on both desktops and mobile devices.
  • Full IntelliSense documentation including remarks and examples.

Supported Frameworks

This library supports all .NET Frameworks from version 1.0 through 3.5 as well as .NET Compact Framework versions 1.0, 2.0, and 3.5. The compiler directive PocketPC is used to target the compact framework. The directive Framework20 is used to isolate code for .NET Framework 2.0/3.x and .NET CF 2.0/3.x.


A newer version of this framework is now available on CodePlex:

Last edited Jul 29, 2009 at 1:29 AM by jperson, version 8