Friday, January 12, 2007

Topology Framework .NET (TF.NET)

Author: Sestic, Maksim

Topology Framework .NET represents a topology manipulation API capable of handling managed objects representation of topological entities based on other popular APIs, exposing it's JTS-based common topology manipulation core to them.

JTS Topology Suite is, in fact, Java API providing spatial object model and fundamental geometric functions, providing a complete, consistent, robust implementation of fundamental 2D spatial algorithms. It implements geometry model defined in the OpenGIS Consortium Simple Features Specification for SQL. JTS port for .NET was named NTS, and is fully conformant to Microsoft .NET 2.0 specification. NTS extends JTS with numerous coordinate transformation and other functions, while TF.NET extends NTS further, including additional IO functions and generic classes related to geometry graphs. For details regarding described technologies and their respective authors see acknowledgements below.

Provided Functions

  • Spatial predicates (based on the DE-9IM model)
  • Overlay functions (intersection, difference, union, symmetric difference)
  • Buffer Convex hull
  • Area and distance functions
  • Topological validity checking
  • Coordinate systems manipulation (transformations)
  • Topological graphs manipulation
  • Generic geometry I/O support: WKT, WKB, GML, SHP

Supported External Managed APIs

Package Components Available For Download

  • TF.NET Core Library, a mandatory component exposing basic topology manipulation API.
  • TF.NET Reader/Writer for MapGuide, a reader/writer for geometric primitives exposed by OSGeo MapGuide Server.
  • TF.NET Reader/Writer for FDO, a reader/writer for geometric primitives exposed by OSGeo Feature Data Objects spatial library.
  • TF.NET Reader/Writer for ObjectARX, a reader/writer for geometric entities exposed by Autodesk AutoCAD and it's verticals.

References And Further Reading

Credits

TF.NET is primarily based on other people's work related to topology manipulation, hence special acknowledgement to them. Referred libraries were additionally repackaged and their namespaces renamed for easier use. Please download copyright disclaimer for detailed description.

For more information please contact project owner: Maksim Sestic

No comments:

Post a Comment