wiki:WikiStart

GEOS - Geometry Engine, Open Source

GEOS (Geometry Engine - Open Source) is a C++ port of the JTS Topology Suite (JTS). It aims to contain the complete functionality of JTS in C++. This includes all the OpenGIS Simple Features for SQL spatial predicate functions and spatial operators, as well as specific JTS enhanced functions. GEOS provides spatial functionality to many other projects and products.

GEOS is a project of OSGeo.

License

GEOS is available under the terms of GNU Lesser General Public License (LGPL).

Capabilities

Spatial Model and Functions

  • Geometries: Point, LineString, Polygon, MultiPoint, MultiLineString, MultiPolygon, GeometryCollection
  • Predicates: Intersects, Touches, Disjoint, Crosses, Within, Contains, Overlaps, Equals, Covers
  • Operations: Union, Distance, Intersection, Symmetric Difference, Convex Hull, Envelope, Buffer, Simplify, Polygon Assembly, Valid, Area, Length,
  • Prepared geometries (pre-spatially indexed)
  • STR spatial index
  • OGC Well Known Text (WKT) and Well Known Binary (WKB) encoders and decoders.

API Features

  • C++ API (will likely change across versions)
  • C API (provides long-term ABI stability)
  • Thread safe (using the reentrant API)

Download

Build and Install

Branch Debbie
Debian 8.2
GNU/Linux 64bit
GCC Debian 8.2.0-3
automake
Winnie
Windows Mingw64
32bit GCC 4.8.1
64bit GCC 4.8.3
MSys CMake
Dronie
Alpine Linux 3.4
64bit
GCC 5.3.0
automake
Travis
Ubuntu 12.04
GNU/Linux 32bit,64bit
GCC 4.6.3, Clang 3.4
cmake,automake
gitlab-ci
Debian 8.2
GNU/Linux 64bit
gcc
automake
AppVeyor
Windows Server 2012 R2
32bit,64bit
VS2015
CMake,NMake
Bessie
FreeBSD 11.2 64-bit clang 6.0
64bit
gcc
CMake (3.11.2) for >=3.8
autotools < 3.8
Bessie32
FreeBSD 11.2 32-bit clang 6.0
64bit
gcc
CMake (3.11.2) for >=3.8
autotools < 3.8
master https://debbie.postgis.net/buildStatus/icon https://winnie.postgis.net:444/view/GEOS/job/GEOS_Master/badge/icon status https://travis-ci.com/libgeos/geos.svg status status status status
3.8 https://debbie.postgis.net/buildStatus/icon https://winnie.postgis.net:444/view/GEOS/job/GEOS_Branch_3.8/badge/icon status https://travis-ci.com/libgeos/geos.svg status status
3.7 https://debbie.postgis.net/buildStatus/icon https://winnie.postgis.net:444/view/GEOS/job/GEOS_Branch_3.7/badge/icon status https://travis-ci.com/libgeos/geos.svg status status
3.6 https://debbie.postgis.net/buildStatus/icon https://winnie.postgis.net:444/view/GEOS/job/GEOS_Branch_3.6/badge/icon status https://travis-ci.com/libgeos/geos.svg status status
3.5 https://debbie.postgis.net/buildStatus/icon https://winnie.postgis.net:444/view/GEOS/job/GEOS_Branch_3.5/badge/icon status https://travis-ci.com/libgeos/geos.svg status N/A
3.4 https://debbie.postgis.net/buildStatus/icon N/A status https://travis-ci.com/libgeos/geos.svg status N/A

Source

Binaries

Development

Bug Reporting

You will need an OSGeo user account to submit bugs here. A "New Ticket" button will appear once you have logged in.

When submitting bugs caused by particular geometries (TopologyExceptions, for example), you must submit the geometries that cause the failure, preferably in hex-encoded WKB, so that we can re-produce the failure cases.

Community

Mailing Lists

IRC

GEOS related channels on FreeNode IRC Network:

Code Repository

Features

Governance

The GEOS project is run by a Project Steering Committee made up of developers and contributors to the project and is a project of OSGeo. Major project decisions are made via a Request for Comments process, where proposals are first documented and then voted on by the steering committee.

Documentation and Other Information

Wiki / Trac Information

Last modified 6 weeks ago Last modified on Oct 10, 2019, 11:24:20 AM

Attachments (1)

Download all attachments as: .zip