More Geodetic Functions
Geodetic Functions Summary
The new GEOGRAPHY type introduced in PostGIS 1.5 has allowed native support for data in longitude/latitude coordinates, with indexing and functions that work directly on the sphere, without issues over the dateline or poles. However, the number of functions currently supported is low, and more functions would make the GEOGRAPHY type more useful.
The functions currently supported in GEOGRAPHY are
- ST_Area(GEOGRAPHY)
- ST_Length(GEOGRAPHY)
- ST_Distance(GEOGRAPHY, GEOGRAPHY)
- ST_DWithin(GEOGRAPHY, GEOGRAPHY, DISTANCE)
- ST_Perimeter(GEOGRAPHY)
This roadmap item would add support for
- ST_Union(GEOGRAPHY, GEOGRAPHY)
- ST_Difference(GEOGRAPHY, GEOGRAPHY)
- ST_Intersection(GEOGRAPHY, GEOGRAPHY)
- ST_Intersects(GEOGRAPHY, GEOGRAPHY)
- ST_Contains(GEOGRAPHY, GEOGRAPHY)
- ST_Within(GEOGRAPHY, GEOGRAPHY)
- ST_Buffer(GEOGRAPHY, DISTANCE)
Funding
This roadmap item is currently unfunded.
Add your support for this item by contacting us for a quote and discussion of the particular features you need.
Get a quote now!
Get a quote on road-map development and add your support to a road-map item.
Other Roadmap Items
The PostGIS spatial index currently splits pages based on longest edge. This results in trees that have sub-optimal spatial clustering in the branches, which in turn makes for sub-optimal clustering. A packed R-Tree would provide the highest performance clustering.
The ISO SQL/MM model includes an extension for a topological coverage: a geometry model in which nodes and edges are the basic building blocks and area covers are built up from those primitives. This allows very fast tests for adjacency and geometry unions, as well as editing and simplifying shared lines.
Tracking collections of moving objects, querying the historical data for relationships, and maintaining alarms when objects enter/leave areas is now a very common use case. The objects might be trucks, planes, boats, people, and so on. A standard data model, support functions, and API for efficient handling of this case would be helpful.