shapely 1.2b7__tar.gz → 1.2rc1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- Shapely-1.2rc1/CREDITS.txt +24 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/PKG-INFO +23 -21
- {Shapely-1.2b7 → Shapely-1.2rc1}/README.txt +22 -20
- {Shapely-1.2b7 → Shapely-1.2rc1}/Shapely.egg-info/PKG-INFO +23 -21
- {Shapely-1.2b7 → Shapely-1.2rc1}/setup.py +1 -1
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/geometry/base.py +13 -3
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/geos.py +2 -2
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/prepared.py +3 -3
- Shapely-1.2b7/CREDITS.txt +0 -9
- {Shapely-1.2b7 → Shapely-1.2rc1}/CHANGES.txt +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/LICENSE.txt +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/MANIFEST.in +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/Shapely.egg-info/SOURCES.txt +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/Shapely.egg-info/dependency_links.txt +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/Shapely.egg-info/top_level.txt +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/examples/dissolve.py +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/examples/intersect.py +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/setup.cfg +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/__init__.py +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/coords.py +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/ctypes_declarations.py +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/geometry/__init__.py +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/geometry/collection.py +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/geometry/geo.py +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/geometry/linestring.py +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/geometry/multilinestring.py +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/geometry/multipoint.py +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/geometry/multipolygon.py +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/geometry/point.py +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/geometry/polygon.py +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/geometry/proxy.py +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/geoms.py +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/impl.py +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/iterops.py +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/linref.py +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/ops.py +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/predicates.py +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/tests/Array.txt +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/tests/GeoInterface.txt +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/tests/IterOps.txt +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/tests/LineString.txt +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/tests/MultiLineString.txt +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/tests/MultiPoint.txt +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/tests/MultiPolygon.txt +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/tests/Operations.txt +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/tests/Persist.txt +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/tests/Point.txt +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/tests/Polygon.txt +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/tests/Predicates.txt +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/tests/__init__.py +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/tests/attribute-chains.txt +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/tests/binascii_hex.txt +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/tests/dimensions.txt +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/tests/invalid_intersection.txt +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/tests/linear-referencing.txt +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/tests/linemerge.txt +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/tests/polygonize.txt +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/tests/test_doctests.py +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/tests/test_equality.py +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/tests/test_geomseq.py +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/tests/test_prepared.py +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/tests/test_xy.py +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/tests/threading_test.py +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/tests/wkt_locale.txt +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/topology.py +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/wkb.py +0 -0
- {Shapely-1.2b7 → Shapely-1.2rc1}/shapely/wkt.py +0 -0
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
Shapely is written by:
|
|
2
|
+
|
|
3
|
+
* Sean Gillies
|
|
4
|
+
* Aron Bierbaum
|
|
5
|
+
* Kai Lautaportti
|
|
6
|
+
|
|
7
|
+
Patches contributed by:
|
|
8
|
+
|
|
9
|
+
* Howard Butler
|
|
10
|
+
* Fr |eaigue| d |eaigue| ric Junod
|
|
11
|
+
* Eric Lemoine
|
|
12
|
+
* Jonathan Tartley
|
|
13
|
+
* Kristian Thy
|
|
14
|
+
* Oliver Tonnhofer
|
|
15
|
+
|
|
16
|
+
Additional help from:
|
|
17
|
+
|
|
18
|
+
* Justin Bronn (GeoDjango) for ctypes inspiration
|
|
19
|
+
* Martin Davis (JTS)
|
|
20
|
+
* Jaakko Salli for the Windows distributions
|
|
21
|
+
* Sandro Santilli, Mateusz Loskot, Paul Ramsey, et al (GEOS Project)
|
|
22
|
+
|
|
23
|
+
Major portions of this work were supported by a grant (for Pleiades_) from the
|
|
24
|
+
U.S. National Endowment for the Humanities (http://www.neh.gov).
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
Metadata-Version: 1.0
|
|
2
2
|
Name: Shapely
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.2rc1
|
|
4
4
|
Summary: Planar geometries, predicates, and operations
|
|
5
5
|
Home-page: http://trac.gispython.org/lab/wiki/Shapely
|
|
6
6
|
Author: Sean Gillies
|
|
7
7
|
Author-email: sean.gillies@gmail.com
|
|
8
8
|
License: BSD
|
|
9
|
-
Description:
|
|
9
|
+
Description: =======
|
|
10
10
|
Shapely
|
|
11
11
|
=======
|
|
12
12
|
|
|
@@ -15,9 +15,9 @@ Description:
|
|
|
15
15
|
:height: 400
|
|
16
16
|
|
|
17
17
|
Shapely is a BSD-licensed Python package for manipulation and analysis of
|
|
18
|
-
planar geometries. It is not concerned with data formats or coordinate
|
|
19
|
-
|
|
20
|
-
|
|
18
|
+
planar geometries. It is not concerned with data formats or coordinate systems.
|
|
19
|
+
It is based on the widely deployed GEOS_ (the engine of PostGIS_) and JTS_
|
|
20
|
+
(from which GEOS is ported) libraries. This C dependency is traded for the
|
|
21
21
|
ability to analyze geometries with blazing speed.
|
|
22
22
|
|
|
23
23
|
In a nutshell: Shapely lets you do PostGIS-ish stuff outside the context of a
|
|
@@ -27,7 +27,6 @@ Description:
|
|
|
27
27
|
* Shapely manual_
|
|
28
28
|
* Shapely `example apps`_
|
|
29
29
|
|
|
30
|
-
|
|
31
30
|
Dependencies
|
|
32
31
|
------------
|
|
33
32
|
|
|
@@ -36,7 +35,6 @@ Description:
|
|
|
36
35
|
* Python >=2.5,<3
|
|
37
36
|
* libgeos_c >=3.1 (3.0 and below have not been tested, YMMV)
|
|
38
37
|
|
|
39
|
-
|
|
40
38
|
Installation
|
|
41
39
|
------------
|
|
42
40
|
|
|
@@ -50,7 +48,6 @@ Description:
|
|
|
50
48
|
|
|
51
49
|
$ python setup.py install
|
|
52
50
|
|
|
53
|
-
|
|
54
51
|
Usage
|
|
55
52
|
-----
|
|
56
53
|
|
|
@@ -67,12 +64,19 @@ Description:
|
|
|
67
64
|
See the manual_ for comprehensive usage snippets and the dissolve.py and
|
|
68
65
|
intersect.py `example apps`_.
|
|
69
66
|
|
|
67
|
+
Integration
|
|
68
|
+
-----------
|
|
69
|
+
|
|
70
|
+
Shapely does not read or write data files, but it can serialize and deserialize
|
|
71
|
+
using several well known formats and protocols. The shapely.wkb and shapely.wkt
|
|
72
|
+
modules provide dumpers and loaders inspired by Python's pickle module.::
|
|
70
73
|
|
|
71
|
-
|
|
72
|
-
|
|
74
|
+
>>> from shapely.wkt import dumps, loads
|
|
75
|
+
>>> dumps(loads('POINT (0 0)'))
|
|
76
|
+
'POINT (0.0000000000000000 0.0000000000000000)'
|
|
73
77
|
|
|
74
|
-
All linear geometries, such as the rings of a polygon
|
|
75
|
-
interface
|
|
78
|
+
All linear geometries, such as the rings of a polygon (like ``patch`` above),
|
|
79
|
+
provide the Numpy array interface.::
|
|
76
80
|
|
|
77
81
|
>>> from numpy import asarray
|
|
78
82
|
>>> ag = asarray(patch.exterior)
|
|
@@ -83,9 +87,9 @@ Description:
|
|
|
83
87
|
...
|
|
84
88
|
[ 1.00000000e+01, 0.00000000e+00]])
|
|
85
89
|
|
|
86
|
-
That yields a numpy array of [x, y] arrays. This is not exactly what one
|
|
87
|
-
for plotting shapes with Matplotlib, so Shapely 1.2 adds a `xy` geometry
|
|
88
|
-
property for getting separate arrays of coordinate x and y values
|
|
90
|
+
That yields a numpy array of [x, y] arrays. This is not always exactly what one
|
|
91
|
+
wants for plotting shapes with Matplotlib, so Shapely 1.2 adds a `xy` geometry
|
|
92
|
+
property for getting separate arrays of coordinate x and y values.::
|
|
89
93
|
|
|
90
94
|
>>> x, y = patch.exterior.xy
|
|
91
95
|
>>> ax = asarray(x)
|
|
@@ -100,15 +104,14 @@ Description:
|
|
|
100
104
|
>>> asLineString(ag).wkt
|
|
101
105
|
'LINESTRING (10.0000000000000000 0.0000000000000000, ...)'
|
|
102
106
|
|
|
103
|
-
|
|
104
107
|
Testing
|
|
105
108
|
-------
|
|
106
109
|
|
|
107
|
-
Shapely uses a Zope-stye suite of unittests and doctests, excercised
|
|
110
|
+
Shapely uses a Zope-stye suite of unittests and doctests, excercised via
|
|
111
|
+
setup.py.::
|
|
108
112
|
|
|
109
113
|
$ python setup.py test
|
|
110
114
|
|
|
111
|
-
|
|
112
115
|
Support
|
|
113
116
|
-------
|
|
114
117
|
|
|
@@ -118,7 +121,6 @@ Description:
|
|
|
118
121
|
|
|
119
122
|
http://trac.gispython.org/projects/PCL/wiki/CommunityList
|
|
120
123
|
|
|
121
|
-
|
|
122
124
|
Credits
|
|
123
125
|
-------
|
|
124
126
|
|
|
@@ -141,18 +143,18 @@ Description:
|
|
|
141
143
|
|
|
142
144
|
* Justin Bronn (GeoDjango) for ctypes inspiration
|
|
143
145
|
* Martin Davis (JTS)
|
|
146
|
+
* Jaakko Salli for the Windows distributions
|
|
144
147
|
* Sandro Santilli, Mateusz Loskot, Paul Ramsey, et al (GEOS Project)
|
|
145
148
|
|
|
146
149
|
Major portions of this work were supported by a grant (for Pleiades_) from the
|
|
147
150
|
U.S. National Endowment for the Humanities (http://www.neh.gov).
|
|
148
151
|
|
|
149
|
-
|
|
150
152
|
.. _JTS: http://www.vividsolutions.com/jts/jtshome.htm
|
|
151
153
|
.. _PostGIS: http://postgis.org
|
|
152
154
|
.. _GEOS: http://trac.osgeo.org/geos/
|
|
153
155
|
.. _example apps: http://trac.gispython.org/lab/wiki/Examples
|
|
154
156
|
.. _wiki: http://trac.gispython.org/lab/wiki/Shapely
|
|
155
|
-
.. _manual: http://gispython.org/shapely/
|
|
157
|
+
.. _manual: http://gispython.org/shapely/docs/1.2
|
|
156
158
|
.. |eaigue| unicode:: U+00E9
|
|
157
159
|
:trim:
|
|
158
160
|
.. _Pleiades: http://pleiades.stoa.org
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
=======
|
|
2
2
|
Shapely
|
|
3
3
|
=======
|
|
4
4
|
|
|
@@ -7,9 +7,9 @@ Shapely
|
|
|
7
7
|
:height: 400
|
|
8
8
|
|
|
9
9
|
Shapely is a BSD-licensed Python package for manipulation and analysis of
|
|
10
|
-
planar geometries. It is not concerned with data formats or coordinate
|
|
11
|
-
|
|
12
|
-
|
|
10
|
+
planar geometries. It is not concerned with data formats or coordinate systems.
|
|
11
|
+
It is based on the widely deployed GEOS_ (the engine of PostGIS_) and JTS_
|
|
12
|
+
(from which GEOS is ported) libraries. This C dependency is traded for the
|
|
13
13
|
ability to analyze geometries with blazing speed.
|
|
14
14
|
|
|
15
15
|
In a nutshell: Shapely lets you do PostGIS-ish stuff outside the context of a
|
|
@@ -19,7 +19,6 @@ database using idiomatic Python. For more details, see:
|
|
|
19
19
|
* Shapely manual_
|
|
20
20
|
* Shapely `example apps`_
|
|
21
21
|
|
|
22
|
-
|
|
23
22
|
Dependencies
|
|
24
23
|
------------
|
|
25
24
|
|
|
@@ -28,7 +27,6 @@ Shapely 1.2 depends on:
|
|
|
28
27
|
* Python >=2.5,<3
|
|
29
28
|
* libgeos_c >=3.1 (3.0 and below have not been tested, YMMV)
|
|
30
29
|
|
|
31
|
-
|
|
32
30
|
Installation
|
|
33
31
|
------------
|
|
34
32
|
|
|
@@ -42,7 +40,6 @@ or from a source distribution with the setup script::
|
|
|
42
40
|
|
|
43
41
|
$ python setup.py install
|
|
44
42
|
|
|
45
|
-
|
|
46
43
|
Usage
|
|
47
44
|
-----
|
|
48
45
|
|
|
@@ -59,12 +56,19 @@ buffering a point::
|
|
|
59
56
|
See the manual_ for comprehensive usage snippets and the dissolve.py and
|
|
60
57
|
intersect.py `example apps`_.
|
|
61
58
|
|
|
59
|
+
Integration
|
|
60
|
+
-----------
|
|
62
61
|
|
|
63
|
-
|
|
64
|
-
|
|
62
|
+
Shapely does not read or write data files, but it can serialize and deserialize
|
|
63
|
+
using several well known formats and protocols. The shapely.wkb and shapely.wkt
|
|
64
|
+
modules provide dumpers and loaders inspired by Python's pickle module.::
|
|
65
65
|
|
|
66
|
-
|
|
67
|
-
|
|
66
|
+
>>> from shapely.wkt import dumps, loads
|
|
67
|
+
>>> dumps(loads('POINT (0 0)'))
|
|
68
|
+
'POINT (0.0000000000000000 0.0000000000000000)'
|
|
69
|
+
|
|
70
|
+
All linear geometries, such as the rings of a polygon (like ``patch`` above),
|
|
71
|
+
provide the Numpy array interface.::
|
|
68
72
|
|
|
69
73
|
>>> from numpy import asarray
|
|
70
74
|
>>> ag = asarray(patch.exterior)
|
|
@@ -75,9 +79,9 @@ interface::
|
|
|
75
79
|
...
|
|
76
80
|
[ 1.00000000e+01, 0.00000000e+00]])
|
|
77
81
|
|
|
78
|
-
That yields a numpy array of [x, y] arrays. This is not exactly what one
|
|
79
|
-
for plotting shapes with Matplotlib, so Shapely 1.2 adds a `xy` geometry
|
|
80
|
-
property for getting separate arrays of coordinate x and y values
|
|
82
|
+
That yields a numpy array of [x, y] arrays. This is not always exactly what one
|
|
83
|
+
wants for plotting shapes with Matplotlib, so Shapely 1.2 adds a `xy` geometry
|
|
84
|
+
property for getting separate arrays of coordinate x and y values.::
|
|
81
85
|
|
|
82
86
|
>>> x, y = patch.exterior.xy
|
|
83
87
|
>>> ax = asarray(x)
|
|
@@ -92,15 +96,14 @@ Numpy arrays can also be adapted to Shapely linestrings::
|
|
|
92
96
|
>>> asLineString(ag).wkt
|
|
93
97
|
'LINESTRING (10.0000000000000000 0.0000000000000000, ...)'
|
|
94
98
|
|
|
95
|
-
|
|
96
99
|
Testing
|
|
97
100
|
-------
|
|
98
101
|
|
|
99
|
-
Shapely uses a Zope-stye suite of unittests and doctests, excercised
|
|
102
|
+
Shapely uses a Zope-stye suite of unittests and doctests, excercised via
|
|
103
|
+
setup.py.::
|
|
100
104
|
|
|
101
105
|
$ python setup.py test
|
|
102
106
|
|
|
103
|
-
|
|
104
107
|
Support
|
|
105
108
|
-------
|
|
106
109
|
|
|
@@ -110,7 +113,6 @@ If you have questions, please consider joining our community list:
|
|
|
110
113
|
|
|
111
114
|
http://trac.gispython.org/projects/PCL/wiki/CommunityList
|
|
112
115
|
|
|
113
|
-
|
|
114
116
|
Credits
|
|
115
117
|
-------
|
|
116
118
|
|
|
@@ -133,18 +135,18 @@ Additional help from:
|
|
|
133
135
|
|
|
134
136
|
* Justin Bronn (GeoDjango) for ctypes inspiration
|
|
135
137
|
* Martin Davis (JTS)
|
|
138
|
+
* Jaakko Salli for the Windows distributions
|
|
136
139
|
* Sandro Santilli, Mateusz Loskot, Paul Ramsey, et al (GEOS Project)
|
|
137
140
|
|
|
138
141
|
Major portions of this work were supported by a grant (for Pleiades_) from the
|
|
139
142
|
U.S. National Endowment for the Humanities (http://www.neh.gov).
|
|
140
143
|
|
|
141
|
-
|
|
142
144
|
.. _JTS: http://www.vividsolutions.com/jts/jtshome.htm
|
|
143
145
|
.. _PostGIS: http://postgis.org
|
|
144
146
|
.. _GEOS: http://trac.osgeo.org/geos/
|
|
145
147
|
.. _example apps: http://trac.gispython.org/lab/wiki/Examples
|
|
146
148
|
.. _wiki: http://trac.gispython.org/lab/wiki/Shapely
|
|
147
|
-
.. _manual: http://gispython.org/shapely/
|
|
149
|
+
.. _manual: http://gispython.org/shapely/docs/1.2
|
|
148
150
|
.. |eaigue| unicode:: U+00E9
|
|
149
151
|
:trim:
|
|
150
152
|
.. _Pleiades: http://pleiades.stoa.org
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
Metadata-Version: 1.0
|
|
2
2
|
Name: Shapely
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.2rc1
|
|
4
4
|
Summary: Planar geometries, predicates, and operations
|
|
5
5
|
Home-page: http://trac.gispython.org/lab/wiki/Shapely
|
|
6
6
|
Author: Sean Gillies
|
|
7
7
|
Author-email: sean.gillies@gmail.com
|
|
8
8
|
License: BSD
|
|
9
|
-
Description:
|
|
9
|
+
Description: =======
|
|
10
10
|
Shapely
|
|
11
11
|
=======
|
|
12
12
|
|
|
@@ -15,9 +15,9 @@ Description:
|
|
|
15
15
|
:height: 400
|
|
16
16
|
|
|
17
17
|
Shapely is a BSD-licensed Python package for manipulation and analysis of
|
|
18
|
-
planar geometries. It is not concerned with data formats or coordinate
|
|
19
|
-
|
|
20
|
-
|
|
18
|
+
planar geometries. It is not concerned with data formats or coordinate systems.
|
|
19
|
+
It is based on the widely deployed GEOS_ (the engine of PostGIS_) and JTS_
|
|
20
|
+
(from which GEOS is ported) libraries. This C dependency is traded for the
|
|
21
21
|
ability to analyze geometries with blazing speed.
|
|
22
22
|
|
|
23
23
|
In a nutshell: Shapely lets you do PostGIS-ish stuff outside the context of a
|
|
@@ -27,7 +27,6 @@ Description:
|
|
|
27
27
|
* Shapely manual_
|
|
28
28
|
* Shapely `example apps`_
|
|
29
29
|
|
|
30
|
-
|
|
31
30
|
Dependencies
|
|
32
31
|
------------
|
|
33
32
|
|
|
@@ -36,7 +35,6 @@ Description:
|
|
|
36
35
|
* Python >=2.5,<3
|
|
37
36
|
* libgeos_c >=3.1 (3.0 and below have not been tested, YMMV)
|
|
38
37
|
|
|
39
|
-
|
|
40
38
|
Installation
|
|
41
39
|
------------
|
|
42
40
|
|
|
@@ -50,7 +48,6 @@ Description:
|
|
|
50
48
|
|
|
51
49
|
$ python setup.py install
|
|
52
50
|
|
|
53
|
-
|
|
54
51
|
Usage
|
|
55
52
|
-----
|
|
56
53
|
|
|
@@ -67,12 +64,19 @@ Description:
|
|
|
67
64
|
See the manual_ for comprehensive usage snippets and the dissolve.py and
|
|
68
65
|
intersect.py `example apps`_.
|
|
69
66
|
|
|
67
|
+
Integration
|
|
68
|
+
-----------
|
|
69
|
+
|
|
70
|
+
Shapely does not read or write data files, but it can serialize and deserialize
|
|
71
|
+
using several well known formats and protocols. The shapely.wkb and shapely.wkt
|
|
72
|
+
modules provide dumpers and loaders inspired by Python's pickle module.::
|
|
70
73
|
|
|
71
|
-
|
|
72
|
-
|
|
74
|
+
>>> from shapely.wkt import dumps, loads
|
|
75
|
+
>>> dumps(loads('POINT (0 0)'))
|
|
76
|
+
'POINT (0.0000000000000000 0.0000000000000000)'
|
|
73
77
|
|
|
74
|
-
All linear geometries, such as the rings of a polygon
|
|
75
|
-
interface
|
|
78
|
+
All linear geometries, such as the rings of a polygon (like ``patch`` above),
|
|
79
|
+
provide the Numpy array interface.::
|
|
76
80
|
|
|
77
81
|
>>> from numpy import asarray
|
|
78
82
|
>>> ag = asarray(patch.exterior)
|
|
@@ -83,9 +87,9 @@ Description:
|
|
|
83
87
|
...
|
|
84
88
|
[ 1.00000000e+01, 0.00000000e+00]])
|
|
85
89
|
|
|
86
|
-
That yields a numpy array of [x, y] arrays. This is not exactly what one
|
|
87
|
-
for plotting shapes with Matplotlib, so Shapely 1.2 adds a `xy` geometry
|
|
88
|
-
property for getting separate arrays of coordinate x and y values
|
|
90
|
+
That yields a numpy array of [x, y] arrays. This is not always exactly what one
|
|
91
|
+
wants for plotting shapes with Matplotlib, so Shapely 1.2 adds a `xy` geometry
|
|
92
|
+
property for getting separate arrays of coordinate x and y values.::
|
|
89
93
|
|
|
90
94
|
>>> x, y = patch.exterior.xy
|
|
91
95
|
>>> ax = asarray(x)
|
|
@@ -100,15 +104,14 @@ Description:
|
|
|
100
104
|
>>> asLineString(ag).wkt
|
|
101
105
|
'LINESTRING (10.0000000000000000 0.0000000000000000, ...)'
|
|
102
106
|
|
|
103
|
-
|
|
104
107
|
Testing
|
|
105
108
|
-------
|
|
106
109
|
|
|
107
|
-
Shapely uses a Zope-stye suite of unittests and doctests, excercised
|
|
110
|
+
Shapely uses a Zope-stye suite of unittests and doctests, excercised via
|
|
111
|
+
setup.py.::
|
|
108
112
|
|
|
109
113
|
$ python setup.py test
|
|
110
114
|
|
|
111
|
-
|
|
112
115
|
Support
|
|
113
116
|
-------
|
|
114
117
|
|
|
@@ -118,7 +121,6 @@ Description:
|
|
|
118
121
|
|
|
119
122
|
http://trac.gispython.org/projects/PCL/wiki/CommunityList
|
|
120
123
|
|
|
121
|
-
|
|
122
124
|
Credits
|
|
123
125
|
-------
|
|
124
126
|
|
|
@@ -141,18 +143,18 @@ Description:
|
|
|
141
143
|
|
|
142
144
|
* Justin Bronn (GeoDjango) for ctypes inspiration
|
|
143
145
|
* Martin Davis (JTS)
|
|
146
|
+
* Jaakko Salli for the Windows distributions
|
|
144
147
|
* Sandro Santilli, Mateusz Loskot, Paul Ramsey, et al (GEOS Project)
|
|
145
148
|
|
|
146
149
|
Major portions of this work were supported by a grant (for Pleiades_) from the
|
|
147
150
|
U.S. National Endowment for the Humanities (http://www.neh.gov).
|
|
148
151
|
|
|
149
|
-
|
|
150
152
|
.. _JTS: http://www.vividsolutions.com/jts/jtshome.htm
|
|
151
153
|
.. _PostGIS: http://postgis.org
|
|
152
154
|
.. _GEOS: http://trac.osgeo.org/geos/
|
|
153
155
|
.. _example apps: http://trac.gispython.org/lab/wiki/Examples
|
|
154
156
|
.. _wiki: http://trac.gispython.org/lab/wiki/Shapely
|
|
155
|
-
.. _manual: http://gispython.org/shapely/
|
|
157
|
+
.. _manual: http://gispython.org/shapely/docs/1.2
|
|
156
158
|
.. |eaigue| unicode:: U+00E9
|
|
157
159
|
:trim:
|
|
158
160
|
.. _Pleiades: http://pleiades.stoa.org
|
|
@@ -16,7 +16,7 @@ readme_text = file('README.txt', 'rb').read()
|
|
|
16
16
|
setup_args = dict(
|
|
17
17
|
metadata_version = '1.2',
|
|
18
18
|
name = 'Shapely',
|
|
19
|
-
version = '1.
|
|
19
|
+
version = '1.2rc1',
|
|
20
20
|
requires_python = '>=2.5,<3',
|
|
21
21
|
requires_external = 'libgeos_c (>=3.1)',
|
|
22
22
|
description = 'Planar geometries, predicates, and operations',
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
|
|
4
4
|
from functools import wraps
|
|
5
5
|
import sys
|
|
6
|
+
import warnings
|
|
6
7
|
|
|
7
8
|
from shapely.coords import CoordinateSequence
|
|
8
9
|
from shapely.geos import lgeos
|
|
@@ -260,13 +261,15 @@ class BaseGeometry(object):
|
|
|
260
261
|
"""A figure that envelopes the geometry"""
|
|
261
262
|
return geom_factory(self.impl['envelope'](self))
|
|
262
263
|
|
|
263
|
-
def buffer(self, distance, quadsegs=
|
|
264
|
+
def buffer(self, distance, resolution=16, quadsegs=None):
|
|
264
265
|
"""Returns a geometry with an envelope at a distance from the object's
|
|
265
266
|
envelope
|
|
266
267
|
|
|
267
268
|
A negative distance has a "shrink" effect. A zero distance may be used
|
|
268
269
|
to "tidy" a polygon. The resolution of the buffer around each vertex of
|
|
269
|
-
the object increases by increasing the
|
|
270
|
+
the object increases by increasing the resolution keyword parameter
|
|
271
|
+
or second positional parameter. Note: the use of a `quadsegs` parameter
|
|
272
|
+
is deprecated and will be gone from the next major release.
|
|
270
273
|
|
|
271
274
|
Example:
|
|
272
275
|
|
|
@@ -279,7 +282,14 @@ class BaseGeometry(object):
|
|
|
279
282
|
>>> g.buffer(1.0, 3).area # triangle approximation
|
|
280
283
|
3.0
|
|
281
284
|
"""
|
|
282
|
-
|
|
285
|
+
if quadsegs is not None:
|
|
286
|
+
warnings.warn(
|
|
287
|
+
"The `quadsegs` argument is deprecated. Use `resolution`.",
|
|
288
|
+
DeprecationWarning)
|
|
289
|
+
res = quadsegs
|
|
290
|
+
else:
|
|
291
|
+
res = resolution
|
|
292
|
+
return geom_factory(self.impl['buffer'](self, distance, res))
|
|
283
293
|
|
|
284
294
|
def simplify(self, tolerance, preserve_topology=True):
|
|
285
295
|
"""Returns a simplified geometry produced by the Douglas-Puecker
|
|
@@ -99,7 +99,7 @@ def _geos_c_version():
|
|
|
99
99
|
v = func().split('-')[2]
|
|
100
100
|
return tuple(int(n) for n in v.split('.'))
|
|
101
101
|
|
|
102
|
-
geos_c_version = _geos_c_version()
|
|
102
|
+
geos_capi_version = geos_c_version = _geos_c_version()
|
|
103
103
|
|
|
104
104
|
class allocated_c_char_p(c_char_p):
|
|
105
105
|
pass
|
|
@@ -348,7 +348,7 @@ class LGEOS16LR(LGEOS16):
|
|
|
348
348
|
"""Proxy for the reentrant GEOS_C DLL/SO API version 1.6 with linear
|
|
349
349
|
referencing
|
|
350
350
|
"""
|
|
351
|
-
geos_capi_version =
|
|
351
|
+
geos_capi_version = geos_c_version
|
|
352
352
|
def __init__(self, dll):
|
|
353
353
|
super(LGEOS16LR, self).__init__(dll)
|
|
354
354
|
|
|
@@ -48,7 +48,7 @@ class PreparedGeometry(object):
|
|
|
48
48
|
return bool(self.impl['prepared_covers'](self, other))
|
|
49
49
|
|
|
50
50
|
|
|
51
|
-
def prep(
|
|
52
|
-
"""Creates and returns a prepared
|
|
53
|
-
return PreparedGeometry(
|
|
51
|
+
def prep(ob):
|
|
52
|
+
"""Creates and returns a prepared geometric object."""
|
|
53
|
+
return PreparedGeometry(ob)
|
|
54
54
|
|
Shapely-1.2b7/CREDITS.txt
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
Sean Gillies (Pleiades)
|
|
2
|
-
Howard Butler (Hobu, Inc.)
|
|
3
|
-
Kai Lautaportti (Hexagon IT)
|
|
4
|
-
Frédéric Junod (Camptocamp SA)
|
|
5
|
-
Eric Lemoine (Camptocamp SA)
|
|
6
|
-
Justin Bronn (GeoDjango) for ctypes inspiration
|
|
7
|
-
|
|
8
|
-
Some of this work was supported by a grant from the U.S. National Endowment for
|
|
9
|
-
the Humanities (http://www.neh.gov).
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|