Project description

Manipulation and analysis of geometric objects in the Cartesian plane.

Shapely is a BSD-licensed Python package for manipulation and analysis of
planar geometric objects. It is based on the widely deployed GEOS (the engine of PostGIS) and JTS (from which GEOS is ported)
libraries. Shapely is not concerned with data formats or coordinate systems,
but can be readily integrated with packages that are. For more details, see:

Installing Shapely

On other systems, acquire the GEOS by any means (brew install geos on OS X or
apt-get install libgeos-dev on Debian/Ubuntu), make sure that it is on the
system library path, and install Shapely from the Python package index.

$ pip install shapely

If you’ve installed GEOS to a non-standard location, the geos-config program
will be used to get compiler and linker options. If it is not on the PATH,
it can be specified with a GEOS_CONFIG environment variable, e.g.:

$GEOS_CONFIG=/path/to/geos-config pip install shapely

If your system’s GEOS version is < 3.3.0 you cannot use Shapely 1.3+ and must
stick to 1.2.x as shown below.

$ pip install shapely<1.3

Or, if you’re using pip 6+

$ pip install shapely~=1.2

Shapely is also provided by popular Python distributions like Canopy (Enthought)
and Anaconda (Continuum Analytics).

Usage

Here is the canonical example of building an approximately circular patch by
buffering a point.

See the manual for comprehensive usage snippets and the dissolve.py and
intersect.py examples.

Integration

Shapely does not read or write data files, but it can serialize and deserialize
using several well known formats and protocols. The shapely.wkb and shapely.wkt
modules provide dumpers and loaders inspired by Python’s pickle module.

Development and Testing

Dependencies for developing Shapely are listed in requirements-dev.txt. Cython
and Numpy are not required for production installations, only for development.
Use of a virtual environment is strongly recommended.

1.0.5 (2008-05-20)

1.0.4 (2008-05-01)

Disentangle Python and topological equality (#163).

Add shape(), a factory that copies coordinates from a geo interface provider.
To be used instead of asShape() unless you really need to store coordinates
outside shapely for efficient use in other code.