Version 1 (modified by 17 years ago) ( diff ) | ,
---|
GEOS Geometries
Background
What is GEOS?
GEOS stands for Geometry Engine - Open Source, and is a C++ port of the Java Topology Suite, implementing the OpenGIS Simple Features for SQL spatial predicate functions and spatial operators.
Why the new API?
- The GEOS SWIG wrapper is no longer maintained, and requires the installation of SWIG.
- See Sean Gillies, Geometries for Python (blog post explaining rationale for abandoning GEOS support); see also Sean's message on the GEOS-Devel Mailing List (Mar. 5, 2007).
- The PCL implementation is over 2K+ lines of C and would make PCL a requisite package for the GeoDjango application stack.
- Cross-platform compatibility.
Thus, the Python ctypes
package was used to wrap the GEOS C API to bring the rich capabilities of GEOS to Python and GeoDjango.
Related Work
Geometry Objects
Point
LineString
LinearRing
Polygon
Geometry Collections
MultiPoint
MultiLineString
MultiPolygon
GeometryCollection
API
Creation
Spatial Predicate Properties
- empty
- valid
- simple
- ring
- hasz
Spatial Predicate Methods
- contains()
- crosses()
- disjoint()
- equals()
- equals_exact()
- intersects()
- overlaps()
- relate_pattern()
- within()
Topological Methods
- buffer()
- difference()
- intersection()
- relate()
- sym_difference()
- union()
Topological Properties
- area
- boundary
- centroid
- convex_hull
- envelope
- point_on_surface
Note:
See TracWiki
for help on using the wiki.