shapely 1.2rc1__tar.gz → 1.2rc2__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 → Shapely-1.2rc2}/CHANGES.txt +9 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/MANIFEST.in +2 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/PKG-INFO +12 -9
- {Shapely-1.2rc1 → Shapely-1.2rc2}/README.txt +10 -7
- {Shapely-1.2rc1 → Shapely-1.2rc2}/Shapely.egg-info/PKG-INFO +12 -9
- {Shapely-1.2rc1 → Shapely-1.2rc2}/Shapely.egg-info/SOURCES.txt +3 -0
- Shapely-1.2rc2/setup.cfg +5 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/setup.py +2 -2
- Shapely-1.2rc2/shapely/tests/cascaded_union.txt +24 -0
- Shapely-1.2rc2/shapely/tests/test_collection.py +10 -0
- Shapely-1.2rc2/shapely/tests/test_emptiness.py +19 -0
- Shapely-1.2rc1/setup.cfg +0 -15
- {Shapely-1.2rc1 → Shapely-1.2rc2}/CREDITS.txt +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/LICENSE.txt +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/Shapely.egg-info/dependency_links.txt +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/Shapely.egg-info/top_level.txt +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/examples/dissolve.py +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/examples/intersect.py +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/__init__.py +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/coords.py +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/ctypes_declarations.py +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/geometry/__init__.py +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/geometry/base.py +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/geometry/collection.py +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/geometry/geo.py +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/geometry/linestring.py +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/geometry/multilinestring.py +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/geometry/multipoint.py +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/geometry/multipolygon.py +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/geometry/point.py +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/geometry/polygon.py +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/geometry/proxy.py +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/geoms.py +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/geos.py +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/impl.py +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/iterops.py +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/linref.py +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/ops.py +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/predicates.py +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/prepared.py +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/tests/Array.txt +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/tests/GeoInterface.txt +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/tests/IterOps.txt +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/tests/LineString.txt +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/tests/MultiLineString.txt +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/tests/MultiPoint.txt +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/tests/MultiPolygon.txt +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/tests/Operations.txt +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/tests/Persist.txt +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/tests/Point.txt +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/tests/Polygon.txt +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/tests/Predicates.txt +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/tests/__init__.py +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/tests/attribute-chains.txt +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/tests/binascii_hex.txt +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/tests/dimensions.txt +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/tests/invalid_intersection.txt +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/tests/linear-referencing.txt +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/tests/linemerge.txt +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/tests/polygonize.txt +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/tests/test_doctests.py +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/tests/test_equality.py +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/tests/test_geomseq.py +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/tests/test_prepared.py +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/tests/test_xy.py +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/tests/threading_test.py +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/tests/wkt_locale.txt +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/topology.py +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/wkb.py +0 -0
- {Shapely-1.2rc1 → Shapely-1.2rc2}/shapely/wkt.py +0 -0
|
@@ -1,5 +1,14 @@
|
|
|
1
1
|
All tickets are children of http://trac.gispython.org/lab/ticket.
|
|
2
2
|
|
|
3
|
+
1.2rc2 (2010-05-26)
|
|
4
|
+
-------------------
|
|
5
|
+
- Add examples and tests to MANIFEST.in.
|
|
6
|
+
- Release candidate 2.
|
|
7
|
+
|
|
8
|
+
1.2rc1 (2010-05-25)
|
|
9
|
+
-------------------
|
|
10
|
+
- Release candidate.
|
|
11
|
+
|
|
3
12
|
1.2b7 (2010-04-22)
|
|
4
13
|
------------------
|
|
5
14
|
- Memory leak associated with new empty geometry state fixed.
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
Metadata-Version: 1.0
|
|
2
2
|
Name: Shapely
|
|
3
|
-
Version: 1.
|
|
4
|
-
Summary:
|
|
3
|
+
Version: 1.2rc2
|
|
4
|
+
Summary: Geometric objects, 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
|
|
@@ -15,10 +15,10 @@ Description: =======
|
|
|
15
15
|
:height: 400
|
|
16
16
|
|
|
17
17
|
Shapely is a BSD-licensed Python package for manipulation and analysis of
|
|
18
|
-
planar
|
|
19
|
-
It is based on the widely deployed GEOS_ (the engine of PostGIS_) and
|
|
20
|
-
(from which GEOS is ported) libraries. This C dependency is traded for the
|
|
21
|
-
ability to
|
|
18
|
+
planar geometric objects. It is not concerned with data formats or coordinate
|
|
19
|
+
systems. It is based on the widely deployed GEOS_ (the engine of PostGIS_) and
|
|
20
|
+
JTS_ (from which GEOS is ported) libraries. This C dependency is traded for the
|
|
21
|
+
ability to execute with blazing speed.
|
|
22
22
|
|
|
23
23
|
In a nutshell: Shapely lets you do PostGIS-ish stuff outside the context of a
|
|
24
24
|
database using idiomatic Python. For more details, see:
|
|
@@ -75,7 +75,7 @@ Description: =======
|
|
|
75
75
|
>>> dumps(loads('POINT (0 0)'))
|
|
76
76
|
'POINT (0.0000000000000000 0.0000000000000000)'
|
|
77
77
|
|
|
78
|
-
All linear
|
|
78
|
+
All linear objects, such as the rings of a polygon (like ``patch`` above),
|
|
79
79
|
provide the Numpy array interface.::
|
|
80
80
|
|
|
81
81
|
>>> from numpy import asarray
|
|
@@ -88,8 +88,8 @@ Description: =======
|
|
|
88
88
|
[ 1.00000000e+01, 0.00000000e+00]])
|
|
89
89
|
|
|
90
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`
|
|
92
|
-
|
|
91
|
+
wants for plotting shapes with Matplotlib, so Shapely 1.2 adds a `xy` property
|
|
92
|
+
for getting separate arrays of coordinate x and y values.::
|
|
93
93
|
|
|
94
94
|
>>> x, y = patch.exterior.xy
|
|
95
95
|
>>> ax = asarray(x)
|
|
@@ -112,6 +112,9 @@ Description: =======
|
|
|
112
112
|
|
|
113
113
|
$ python setup.py test
|
|
114
114
|
|
|
115
|
+
Nosetests won't run the tests properly; Zope doctest suites are not currently
|
|
116
|
+
supported well by nose.
|
|
117
|
+
|
|
115
118
|
Support
|
|
116
119
|
-------
|
|
117
120
|
|
|
@@ -7,10 +7,10 @@ Shapely
|
|
|
7
7
|
:height: 400
|
|
8
8
|
|
|
9
9
|
Shapely is a BSD-licensed Python package for manipulation and analysis of
|
|
10
|
-
planar
|
|
11
|
-
It is based on the widely deployed GEOS_ (the engine of PostGIS_) and
|
|
12
|
-
(from which GEOS is ported) libraries. This C dependency is traded for the
|
|
13
|
-
ability to
|
|
10
|
+
planar geometric objects. It is not concerned with data formats or coordinate
|
|
11
|
+
systems. It is based on the widely deployed GEOS_ (the engine of PostGIS_) and
|
|
12
|
+
JTS_ (from which GEOS is ported) libraries. This C dependency is traded for the
|
|
13
|
+
ability to execute with blazing speed.
|
|
14
14
|
|
|
15
15
|
In a nutshell: Shapely lets you do PostGIS-ish stuff outside the context of a
|
|
16
16
|
database using idiomatic Python. For more details, see:
|
|
@@ -67,7 +67,7 @@ modules provide dumpers and loaders inspired by Python's pickle module.::
|
|
|
67
67
|
>>> dumps(loads('POINT (0 0)'))
|
|
68
68
|
'POINT (0.0000000000000000 0.0000000000000000)'
|
|
69
69
|
|
|
70
|
-
All linear
|
|
70
|
+
All linear objects, such as the rings of a polygon (like ``patch`` above),
|
|
71
71
|
provide the Numpy array interface.::
|
|
72
72
|
|
|
73
73
|
>>> from numpy import asarray
|
|
@@ -80,8 +80,8 @@ provide the Numpy array interface.::
|
|
|
80
80
|
[ 1.00000000e+01, 0.00000000e+00]])
|
|
81
81
|
|
|
82
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`
|
|
84
|
-
|
|
83
|
+
wants for plotting shapes with Matplotlib, so Shapely 1.2 adds a `xy` property
|
|
84
|
+
for getting separate arrays of coordinate x and y values.::
|
|
85
85
|
|
|
86
86
|
>>> x, y = patch.exterior.xy
|
|
87
87
|
>>> ax = asarray(x)
|
|
@@ -104,6 +104,9 @@ setup.py.::
|
|
|
104
104
|
|
|
105
105
|
$ python setup.py test
|
|
106
106
|
|
|
107
|
+
Nosetests won't run the tests properly; Zope doctest suites are not currently
|
|
108
|
+
supported well by nose.
|
|
109
|
+
|
|
107
110
|
Support
|
|
108
111
|
-------
|
|
109
112
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
Metadata-Version: 1.0
|
|
2
2
|
Name: Shapely
|
|
3
|
-
Version: 1.
|
|
4
|
-
Summary:
|
|
3
|
+
Version: 1.2rc2
|
|
4
|
+
Summary: Geometric objects, 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
|
|
@@ -15,10 +15,10 @@ Description: =======
|
|
|
15
15
|
:height: 400
|
|
16
16
|
|
|
17
17
|
Shapely is a BSD-licensed Python package for manipulation and analysis of
|
|
18
|
-
planar
|
|
19
|
-
It is based on the widely deployed GEOS_ (the engine of PostGIS_) and
|
|
20
|
-
(from which GEOS is ported) libraries. This C dependency is traded for the
|
|
21
|
-
ability to
|
|
18
|
+
planar geometric objects. It is not concerned with data formats or coordinate
|
|
19
|
+
systems. It is based on the widely deployed GEOS_ (the engine of PostGIS_) and
|
|
20
|
+
JTS_ (from which GEOS is ported) libraries. This C dependency is traded for the
|
|
21
|
+
ability to execute with blazing speed.
|
|
22
22
|
|
|
23
23
|
In a nutshell: Shapely lets you do PostGIS-ish stuff outside the context of a
|
|
24
24
|
database using idiomatic Python. For more details, see:
|
|
@@ -75,7 +75,7 @@ Description: =======
|
|
|
75
75
|
>>> dumps(loads('POINT (0 0)'))
|
|
76
76
|
'POINT (0.0000000000000000 0.0000000000000000)'
|
|
77
77
|
|
|
78
|
-
All linear
|
|
78
|
+
All linear objects, such as the rings of a polygon (like ``patch`` above),
|
|
79
79
|
provide the Numpy array interface.::
|
|
80
80
|
|
|
81
81
|
>>> from numpy import asarray
|
|
@@ -88,8 +88,8 @@ Description: =======
|
|
|
88
88
|
[ 1.00000000e+01, 0.00000000e+00]])
|
|
89
89
|
|
|
90
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`
|
|
92
|
-
|
|
91
|
+
wants for plotting shapes with Matplotlib, so Shapely 1.2 adds a `xy` property
|
|
92
|
+
for getting separate arrays of coordinate x and y values.::
|
|
93
93
|
|
|
94
94
|
>>> x, y = patch.exterior.xy
|
|
95
95
|
>>> ax = asarray(x)
|
|
@@ -112,6 +112,9 @@ Description: =======
|
|
|
112
112
|
|
|
113
113
|
$ python setup.py test
|
|
114
114
|
|
|
115
|
+
Nosetests won't run the tests properly; Zope doctest suites are not currently
|
|
116
|
+
supported well by nose.
|
|
117
|
+
|
|
115
118
|
Support
|
|
116
119
|
-------
|
|
117
120
|
|
|
@@ -51,12 +51,15 @@ shapely/tests/Predicates.txt
|
|
|
51
51
|
shapely/tests/__init__.py
|
|
52
52
|
shapely/tests/attribute-chains.txt
|
|
53
53
|
shapely/tests/binascii_hex.txt
|
|
54
|
+
shapely/tests/cascaded_union.txt
|
|
54
55
|
shapely/tests/dimensions.txt
|
|
55
56
|
shapely/tests/invalid_intersection.txt
|
|
56
57
|
shapely/tests/linear-referencing.txt
|
|
57
58
|
shapely/tests/linemerge.txt
|
|
58
59
|
shapely/tests/polygonize.txt
|
|
60
|
+
shapely/tests/test_collection.py
|
|
59
61
|
shapely/tests/test_doctests.py
|
|
62
|
+
shapely/tests/test_emptiness.py
|
|
60
63
|
shapely/tests/test_equality.py
|
|
61
64
|
shapely/tests/test_geomseq.py
|
|
62
65
|
shapely/tests/test_prepared.py
|
Shapely-1.2rc2/setup.cfg
ADDED
|
@@ -16,10 +16,10 @@ 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.2rc2',
|
|
20
20
|
requires_python = '>=2.5,<3',
|
|
21
21
|
requires_external = 'libgeos_c (>=3.1)',
|
|
22
|
-
description = '
|
|
22
|
+
description = 'Geometric objects, predicates, and operations',
|
|
23
23
|
license = 'BSD',
|
|
24
24
|
keywords = 'geometry topology gis',
|
|
25
25
|
author = 'Sean Gillies',
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
Cascaded Union
|
|
2
|
+
==============
|
|
3
|
+
|
|
4
|
+
>>> from functools import partial
|
|
5
|
+
>>> import random
|
|
6
|
+
>>> from shapely.geometry import Point
|
|
7
|
+
>>> from shapely.ops import cascaded_union
|
|
8
|
+
|
|
9
|
+
Use a partial function to make 100 points uniformly distributed in a 40x40
|
|
10
|
+
box centered on 0,0.
|
|
11
|
+
|
|
12
|
+
>>> r = partial(random.uniform, -20.0, 20.0)
|
|
13
|
+
>>> points = [Point(r(), r()) for i in range(100)]
|
|
14
|
+
|
|
15
|
+
Buffer the points, producing 100 polygon spots
|
|
16
|
+
|
|
17
|
+
>>> spots = [p.buffer(2.5) for p in points]
|
|
18
|
+
|
|
19
|
+
Perform a cascaded union of the polygon spots, dissolving them into a
|
|
20
|
+
collection of polygon patches
|
|
21
|
+
|
|
22
|
+
>>> cascaded_union(spots) # doctest: +ELLIPSIS
|
|
23
|
+
<shapely.geometry.multipolygon.MultiPolygon object at 0x...>
|
|
24
|
+
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import unittest
|
|
2
|
+
from shapely.geometry.collection import GeometryCollection
|
|
3
|
+
|
|
4
|
+
class CollectionTestCase(unittest.TestCase):
|
|
5
|
+
def test_array_interface(self):
|
|
6
|
+
m = GeometryCollection()
|
|
7
|
+
self.failUnlessEqual(len(m), 0)
|
|
8
|
+
|
|
9
|
+
def test_suite():
|
|
10
|
+
return unittest.TestLoader().loadTestsFromTestCase(CollectionTestCase)
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import unittest
|
|
2
|
+
from shapely.geometry.base import BaseGeometry
|
|
3
|
+
from shapely.geometry import Point
|
|
4
|
+
|
|
5
|
+
class EmptinessTestCase(unittest.TestCase):
|
|
6
|
+
def test_empty_base(self):
|
|
7
|
+
g = BaseGeometry()
|
|
8
|
+
self.failUnless(g._is_empty, True)
|
|
9
|
+
def test_empty_point(self):
|
|
10
|
+
p = Point()
|
|
11
|
+
self.failUnless(p._is_empty, True)
|
|
12
|
+
def test_emptying_point(self):
|
|
13
|
+
p = Point(0, 0)
|
|
14
|
+
self.failIf(p._is_empty, False)
|
|
15
|
+
p.empty()
|
|
16
|
+
self.failUnless(p._is_empty, True)
|
|
17
|
+
|
|
18
|
+
def test_suite():
|
|
19
|
+
return unittest.TestLoader().loadTestsFromTestCase(EmptinessTestCase)
|
Shapely-1.2rc1/setup.cfg
DELETED
|
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
|