shapely 1.0.12__tar.gz → 1.0.14__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.0.12 → Shapely-1.0.14}/CHANGES.txt +10 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/CREDITS.txt +2 -2
- Shapely-1.0.14/MANIFEST.in +2 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/PKG-INFO +7 -14
- {Shapely-1.0.12 → Shapely-1.0.14}/README.txt +6 -13
- {Shapely-1.0.12 → Shapely-1.0.14}/Shapely.egg-info/PKG-INFO +7 -14
- {Shapely-1.0.12 → Shapely-1.0.14}/Shapely.egg-info/SOURCES.txt +2 -1
- Shapely-1.0.14/Shapely.egg-info/requires.txt +2 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/setup.py +1 -1
- {Shapely-1.0.12 → Shapely-1.0.14}/setup_windows.py +1 -1
- Shapely-1.0.14/shapely/ctypes_declarations.py +212 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/shapely/geometry/base.py +4 -3
- {Shapely-1.0.12 → Shapely-1.0.14}/shapely/geos.py +12 -6
- {Shapely-1.0.12 → Shapely-1.0.14}/shapely/wkb.py +4 -2
- {Shapely-1.0.12 → Shapely-1.0.14}/tests/wkt_locale.txt +5 -3
- Shapely-1.0.12/Shapely.egg-info/requires.txt +0 -1
- Shapely-1.0.12/shapely/ctypes_declarations.py +0 -204
- {Shapely-1.0.12 → Shapely-1.0.14}/GEOS-C-API.txt +0 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/HISTORY.txt +0 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/LICENSE.txt +0 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/Shapely.egg-info/dependency_links.txt +0 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/Shapely.egg-info/top_level.txt +0 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/examples/geoms.py +0 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/examples/world.py +0 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/manual/manual.txt +0 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/manual/style.css +0 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/setup.cfg +0 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/shapely/__init__.py +0 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/shapely/geometry/__init__.py +0 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/shapely/geometry/collection.py +0 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/shapely/geometry/geo.py +0 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/shapely/geometry/linestring.py +0 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/shapely/geometry/multilinestring.py +0 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/shapely/geometry/multipoint.py +0 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/shapely/geometry/multipolygon.py +0 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/shapely/geometry/point.py +0 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/shapely/geometry/polygon.py +0 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/shapely/geometry/proxy.py +0 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/shapely/iterops.py +0 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/shapely/ops.py +0 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/shapely/predicates.py +0 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/shapely/topology.py +0 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/shapely/wkt.py +0 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/tests/Array.txt +0 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/tests/GeoInterface.txt +0 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/tests/IterOps.txt +0 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/tests/LineString.txt +0 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/tests/MultiLineString.txt +0 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/tests/MultiPoint.txt +0 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/tests/MultiPolygon.txt +0 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/tests/Operations.txt +0 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/tests/Persist.txt +0 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/tests/Point.txt +0 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/tests/Polygon.txt +0 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/tests/Predicates.txt +0 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/tests/__init__.py +0 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/tests/attribute-chains.txt +0 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/tests/binascii_hex.txt +0 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/tests/dimensions.txt +0 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/tests/invalid_intersection.txt +0 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/tests/polygonize.txt +0 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/tests/rungrind.dist +0 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/tests/test_doctests.py +0 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/tests/test_threads.py +0 -0
- {Shapely-1.0.12 → Shapely-1.0.14}/tests/valgrind-python.supp +0 -0
|
@@ -1,5 +1,15 @@
|
|
|
1
1
|
All tickets are children of http://trac.gispython.org/lab/ticket.
|
|
2
2
|
|
|
3
|
+
1.0.14 (2009-10-05)
|
|
4
|
+
-------------------
|
|
5
|
+
- Proper prototyping of WKB writer, and avoidance of errors on 64-bit systems
|
|
6
|
+
(#191).
|
|
7
|
+
|
|
8
|
+
1.0.13 (2009-09-29)
|
|
9
|
+
-------------------
|
|
10
|
+
- Prototype libgeos_c functions in a way that lets py2exe apps import shapely
|
|
11
|
+
(#189).
|
|
12
|
+
|
|
3
13
|
1.0.12 (2009-04-09)
|
|
4
14
|
-------------------
|
|
5
15
|
- Fix for references held by topology and predicate descriptors.
|
|
@@ -5,5 +5,5 @@ Frédéric Junod (Camptocamp SA)
|
|
|
5
5
|
Eric Lemoine (Camptocamp SA)
|
|
6
6
|
Justin Bronn (GeoDjango) for ctypes inspiration
|
|
7
7
|
|
|
8
|
-
Some of this work was supported by a grant from the U.S. National Endowment
|
|
9
|
-
the Humanities (http://www.neh.gov).
|
|
8
|
+
Some of this work was supported by a grant from the U.S. National Endowment
|
|
9
|
+
for the Humanities (http://www.neh.gov).
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 1.0
|
|
2
2
|
Name: Shapely
|
|
3
|
-
Version: 1.0.
|
|
3
|
+
Version: 1.0.14
|
|
4
4
|
Summary: Geospatial geometries, predicates, and operations
|
|
5
5
|
Home-page: http://trac.gispython.org/lab/wiki/Shapely
|
|
6
6
|
Author: Sean Gillies
|
|
@@ -19,7 +19,7 @@ Description: Shapely
|
|
|
19
19
|
* Shapely manual_
|
|
20
20
|
|
|
21
21
|
Shapely requires Python 2.4+. (I've also begun to port it to Python 3.0:
|
|
22
|
-
http://
|
|
22
|
+
http://sgillies.net/blog/564/shapely-for-python-3-0/.)
|
|
23
23
|
|
|
24
24
|
.. note::
|
|
25
25
|
We've switched to Windows GEOS DLLs based on MinGW in versions >= 1.0.6.
|
|
@@ -27,8 +27,8 @@ Description: Shapely
|
|
|
27
27
|
|
|
28
28
|
See also CHANGES.txt_ and HISTORY.txt_.
|
|
29
29
|
|
|
30
|
-
.. _CHANGES.txt: http://trac.gispython.org/
|
|
31
|
-
.. _HISTORY.txt: http://trac.gispython.org/
|
|
30
|
+
.. _CHANGES.txt: http://trac.gispython.org/lab/browser/Shapely/trunk/CHANGES.txt
|
|
31
|
+
.. _HISTORY.txt: http://trac.gispython.org/lab/browser/Shapely/trunk/HISTORY.txt
|
|
32
32
|
.. _WorldMill: http://pypi.python.org/pypi/WorldMill
|
|
33
33
|
.. _pyproj: http://pypi.python.org/pypi/pyproj
|
|
34
34
|
|
|
@@ -51,17 +51,10 @@ Description: Shapely
|
|
|
51
51
|
|
|
52
52
|
$ sudo easy_install Shapely
|
|
53
53
|
|
|
54
|
-
with the setup script::
|
|
54
|
+
or with the setup script::
|
|
55
55
|
|
|
56
56
|
$ sudo python setup.py install
|
|
57
57
|
|
|
58
|
-
or by using the development buildout on Linux, which also provides libgeos_c::
|
|
59
|
-
|
|
60
|
-
$ svn co http://svn.gispython.org/svn/gispy/buildout/shapely.buildout/trunk shapely.buildout
|
|
61
|
-
$ cd shapely.buildout
|
|
62
|
-
$ python bootstrap.py
|
|
63
|
-
$ ./bin/buildout
|
|
64
|
-
|
|
65
58
|
|
|
66
59
|
Usage
|
|
67
60
|
-----
|
|
@@ -124,7 +117,7 @@ Description: Shapely
|
|
|
124
117
|
>>> tuple(shape.coords)
|
|
125
118
|
((0.0, 0.0),)
|
|
126
119
|
|
|
127
|
-
See http://trac.gispython.org/
|
|
120
|
+
See http://trac.gispython.org/lab/wiki/PythonGeoInterface for more
|
|
128
121
|
details on the interface.
|
|
129
122
|
|
|
130
123
|
|
|
@@ -148,7 +141,7 @@ Description: Shapely
|
|
|
148
141
|
|
|
149
142
|
For current information about this project, see the wiki_.
|
|
150
143
|
|
|
151
|
-
.. _wiki: http://trac.gispython.org/
|
|
144
|
+
.. _wiki: http://trac.gispython.org/lab/wiki/Shapely
|
|
152
145
|
.. _manual: http://gispython.org/shapely/manual.html
|
|
153
146
|
|
|
154
147
|
If you have questions, please consider joining our community list:
|
|
@@ -11,7 +11,7 @@ to other packages like WorldMill_ and pyproj_. For more information, see:
|
|
|
11
11
|
* Shapely manual_
|
|
12
12
|
|
|
13
13
|
Shapely requires Python 2.4+. (I've also begun to port it to Python 3.0:
|
|
14
|
-
http://
|
|
14
|
+
http://sgillies.net/blog/564/shapely-for-python-3-0/.)
|
|
15
15
|
|
|
16
16
|
.. note::
|
|
17
17
|
We've switched to Windows GEOS DLLs based on MinGW in versions >= 1.0.6.
|
|
@@ -19,8 +19,8 @@ http://zcologia.com/news/564/shapely-for-python-3-0/.)
|
|
|
19
19
|
|
|
20
20
|
See also CHANGES.txt_ and HISTORY.txt_.
|
|
21
21
|
|
|
22
|
-
.. _CHANGES.txt: http://trac.gispython.org/
|
|
23
|
-
.. _HISTORY.txt: http://trac.gispython.org/
|
|
22
|
+
.. _CHANGES.txt: http://trac.gispython.org/lab/browser/Shapely/trunk/CHANGES.txt
|
|
23
|
+
.. _HISTORY.txt: http://trac.gispython.org/lab/browser/Shapely/trunk/HISTORY.txt
|
|
24
24
|
.. _WorldMill: http://pypi.python.org/pypi/WorldMill
|
|
25
25
|
.. _pyproj: http://pypi.python.org/pypi/pyproj
|
|
26
26
|
|
|
@@ -43,17 +43,10 @@ is on the system library path, and install from the Python package index::
|
|
|
43
43
|
|
|
44
44
|
$ sudo easy_install Shapely
|
|
45
45
|
|
|
46
|
-
with the setup script::
|
|
46
|
+
or with the setup script::
|
|
47
47
|
|
|
48
48
|
$ sudo python setup.py install
|
|
49
49
|
|
|
50
|
-
or by using the development buildout on Linux, which also provides libgeos_c::
|
|
51
|
-
|
|
52
|
-
$ svn co http://svn.gispython.org/svn/gispy/buildout/shapely.buildout/trunk shapely.buildout
|
|
53
|
-
$ cd shapely.buildout
|
|
54
|
-
$ python bootstrap.py
|
|
55
|
-
$ ./bin/buildout
|
|
56
|
-
|
|
57
50
|
|
|
58
51
|
Usage
|
|
59
52
|
-----
|
|
@@ -116,7 +109,7 @@ geometry with the asShape factory::
|
|
|
116
109
|
>>> tuple(shape.coords)
|
|
117
110
|
((0.0, 0.0),)
|
|
118
111
|
|
|
119
|
-
See http://trac.gispython.org/
|
|
112
|
+
See http://trac.gispython.org/lab/wiki/PythonGeoInterface for more
|
|
120
113
|
details on the interface.
|
|
121
114
|
|
|
122
115
|
|
|
@@ -140,7 +133,7 @@ Support
|
|
|
140
133
|
|
|
141
134
|
For current information about this project, see the wiki_.
|
|
142
135
|
|
|
143
|
-
.. _wiki: http://trac.gispython.org/
|
|
136
|
+
.. _wiki: http://trac.gispython.org/lab/wiki/Shapely
|
|
144
137
|
.. _manual: http://gispython.org/shapely/manual.html
|
|
145
138
|
|
|
146
139
|
If you have questions, please consider joining our community list:
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 1.0
|
|
2
2
|
Name: Shapely
|
|
3
|
-
Version: 1.0.
|
|
3
|
+
Version: 1.0.14
|
|
4
4
|
Summary: Geospatial geometries, predicates, and operations
|
|
5
5
|
Home-page: http://trac.gispython.org/lab/wiki/Shapely
|
|
6
6
|
Author: Sean Gillies
|
|
@@ -19,7 +19,7 @@ Description: Shapely
|
|
|
19
19
|
* Shapely manual_
|
|
20
20
|
|
|
21
21
|
Shapely requires Python 2.4+. (I've also begun to port it to Python 3.0:
|
|
22
|
-
http://
|
|
22
|
+
http://sgillies.net/blog/564/shapely-for-python-3-0/.)
|
|
23
23
|
|
|
24
24
|
.. note::
|
|
25
25
|
We've switched to Windows GEOS DLLs based on MinGW in versions >= 1.0.6.
|
|
@@ -27,8 +27,8 @@ Description: Shapely
|
|
|
27
27
|
|
|
28
28
|
See also CHANGES.txt_ and HISTORY.txt_.
|
|
29
29
|
|
|
30
|
-
.. _CHANGES.txt: http://trac.gispython.org/
|
|
31
|
-
.. _HISTORY.txt: http://trac.gispython.org/
|
|
30
|
+
.. _CHANGES.txt: http://trac.gispython.org/lab/browser/Shapely/trunk/CHANGES.txt
|
|
31
|
+
.. _HISTORY.txt: http://trac.gispython.org/lab/browser/Shapely/trunk/HISTORY.txt
|
|
32
32
|
.. _WorldMill: http://pypi.python.org/pypi/WorldMill
|
|
33
33
|
.. _pyproj: http://pypi.python.org/pypi/pyproj
|
|
34
34
|
|
|
@@ -51,17 +51,10 @@ Description: Shapely
|
|
|
51
51
|
|
|
52
52
|
$ sudo easy_install Shapely
|
|
53
53
|
|
|
54
|
-
with the setup script::
|
|
54
|
+
or with the setup script::
|
|
55
55
|
|
|
56
56
|
$ sudo python setup.py install
|
|
57
57
|
|
|
58
|
-
or by using the development buildout on Linux, which also provides libgeos_c::
|
|
59
|
-
|
|
60
|
-
$ svn co http://svn.gispython.org/svn/gispy/buildout/shapely.buildout/trunk shapely.buildout
|
|
61
|
-
$ cd shapely.buildout
|
|
62
|
-
$ python bootstrap.py
|
|
63
|
-
$ ./bin/buildout
|
|
64
|
-
|
|
65
58
|
|
|
66
59
|
Usage
|
|
67
60
|
-----
|
|
@@ -124,7 +117,7 @@ Description: Shapely
|
|
|
124
117
|
>>> tuple(shape.coords)
|
|
125
118
|
((0.0, 0.0),)
|
|
126
119
|
|
|
127
|
-
See http://trac.gispython.org/
|
|
120
|
+
See http://trac.gispython.org/lab/wiki/PythonGeoInterface for more
|
|
128
121
|
details on the interface.
|
|
129
122
|
|
|
130
123
|
|
|
@@ -148,7 +141,7 @@ Description: Shapely
|
|
|
148
141
|
|
|
149
142
|
For current information about this project, see the wiki_.
|
|
150
143
|
|
|
151
|
-
.. _wiki: http://trac.gispython.org/
|
|
144
|
+
.. _wiki: http://trac.gispython.org/lab/wiki/Shapely
|
|
152
145
|
.. _manual: http://gispython.org/shapely/manual.html
|
|
153
146
|
|
|
154
147
|
If you have questions, please consider joining our community list:
|
|
@@ -3,6 +3,7 @@ CREDITS.txt
|
|
|
3
3
|
GEOS-C-API.txt
|
|
4
4
|
HISTORY.txt
|
|
5
5
|
LICENSE.txt
|
|
6
|
+
MANIFEST.in
|
|
6
7
|
README.txt
|
|
7
8
|
setup.py
|
|
8
9
|
setup_windows.py
|
|
@@ -57,4 +58,4 @@ tests/rungrind.dist
|
|
|
57
58
|
tests/test_doctests.py
|
|
58
59
|
tests/test_threads.py
|
|
59
60
|
tests/valgrind-python.supp
|
|
60
|
-
tests/wkt_locale.txt
|
|
61
|
+
tests/wkt_locale.txt
|
|
@@ -10,7 +10,7 @@ if version_info[:2] < (2,5):
|
|
|
10
10
|
readme_text = file('README.txt', 'rb').read()
|
|
11
11
|
|
|
12
12
|
setup(name = 'Shapely',
|
|
13
|
-
version = '1.0.
|
|
13
|
+
version = '1.0.14',
|
|
14
14
|
description = 'Geospatial geometries, predicates, and operations',
|
|
15
15
|
license = 'BSD',
|
|
16
16
|
keywords = 'geometry topology',
|
|
@@ -10,7 +10,7 @@ if version_info[:2] < (2,5):
|
|
|
10
10
|
readme_text = file('README.txt', 'rb').read()
|
|
11
11
|
|
|
12
12
|
setup(name = 'Shapely',
|
|
13
|
-
version = '1.0.
|
|
13
|
+
version = '1.0.14',
|
|
14
14
|
description = 'Geospatial geometries, predicates, and operations',
|
|
15
15
|
license = 'BSD',
|
|
16
16
|
keywords = 'geometry topology',
|
|
@@ -0,0 +1,212 @@
|
|
|
1
|
+
# Prototyping of libgeos_c functions, now using a function written by
|
|
2
|
+
# `tartley`: http://trac.gispython.org/lab/ticket/189
|
|
3
|
+
|
|
4
|
+
import ctypes
|
|
5
|
+
|
|
6
|
+
def prototype(lgeos):
|
|
7
|
+
|
|
8
|
+
lgeos.initGEOS.restype = None
|
|
9
|
+
|
|
10
|
+
lgeos.finishGEOS.restype = None
|
|
11
|
+
|
|
12
|
+
lgeos.GEOSversion.restype = ctypes.c_char_p
|
|
13
|
+
|
|
14
|
+
lgeos.GEOSGeomFromWKT.restype = ctypes.c_void_p
|
|
15
|
+
lgeos.GEOSGeomFromWKT.argtypes = [ctypes.c_char_p]
|
|
16
|
+
|
|
17
|
+
lgeos.GEOSGeomToWKT.restype = ctypes.c_char_p
|
|
18
|
+
lgeos.GEOSGeomToWKT.argtypes = [ctypes.c_void_p]
|
|
19
|
+
|
|
20
|
+
lgeos.GEOS_setWKBOutputDims.restype = ctypes.c_int
|
|
21
|
+
lgeos.GEOS_setWKBOutputDims.argtypes = [ctypes.c_int]
|
|
22
|
+
|
|
23
|
+
lgeos.GEOSGeomFromWKB_buf.restype = ctypes.c_void_p
|
|
24
|
+
lgeos.GEOSGeomFromWKB_buf.argtypes = [ctypes.c_void_p, ctypes.c_size_t]
|
|
25
|
+
|
|
26
|
+
lgeos.GEOSGeomToWKB_buf.restype = ctypes.c_void_p
|
|
27
|
+
lgeos.GEOSGeomToWKB_buf.argtypes = [ctypes.c_void_p , ctypes.POINTER(ctypes.c_size_t)]
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
lgeos.GEOSCoordSeq_create.restype = ctypes.c_void_p
|
|
31
|
+
lgeos.GEOSCoordSeq_create.argtypes = [ctypes.c_uint, ctypes.c_uint]
|
|
32
|
+
|
|
33
|
+
lgeos.GEOSCoordSeq_clone.restype = ctypes.c_void_p
|
|
34
|
+
lgeos.GEOSCoordSeq_clone.argtypes = [ctypes.c_void_p]
|
|
35
|
+
|
|
36
|
+
lgeos.GEOSCoordSeq_destroy.restype = None
|
|
37
|
+
lgeos.GEOSCoordSeq_destroy.argtypes = [ctypes.c_void_p]
|
|
38
|
+
|
|
39
|
+
lgeos.GEOSCoordSeq_setX.restype = ctypes.c_int
|
|
40
|
+
lgeos.GEOSCoordSeq_setX.argtypes = [ctypes.c_void_p, ctypes.c_uint, ctypes.c_double]
|
|
41
|
+
|
|
42
|
+
lgeos.GEOSCoordSeq_setY.restype = ctypes.c_int
|
|
43
|
+
lgeos.GEOSCoordSeq_setY.argtypes = [ctypes.c_void_p, ctypes.c_uint, ctypes.c_double]
|
|
44
|
+
|
|
45
|
+
lgeos.GEOSCoordSeq_setZ.restype = ctypes.c_int
|
|
46
|
+
lgeos.GEOSCoordSeq_setZ.argtypes = [ctypes.c_void_p, ctypes.c_uint, ctypes.c_double]
|
|
47
|
+
|
|
48
|
+
lgeos.GEOSCoordSeq_setOrdinate.restype = ctypes.c_int
|
|
49
|
+
lgeos.GEOSCoordSeq_setOrdinate.argtypes = [ctypes.c_void_p, ctypes.c_uint, ctypes.c_uint, ctypes.c_double]
|
|
50
|
+
|
|
51
|
+
lgeos.GEOSCoordSeq_getX.restype = ctypes.c_int
|
|
52
|
+
lgeos.GEOSCoordSeq_getX.argtypes = [ctypes.c_void_p, ctypes.c_uint, ctypes.c_void_p]
|
|
53
|
+
|
|
54
|
+
lgeos.GEOSCoordSeq_getY.restype = ctypes.c_int
|
|
55
|
+
lgeos.GEOSCoordSeq_getY.argtypes = [ctypes.c_void_p, ctypes.c_uint, ctypes.c_void_p]
|
|
56
|
+
|
|
57
|
+
lgeos.GEOSCoordSeq_getZ.restype = ctypes.c_int
|
|
58
|
+
lgeos.GEOSCoordSeq_getZ.argtypes = [ctypes.c_void_p, ctypes.c_uint, ctypes.c_void_p]
|
|
59
|
+
|
|
60
|
+
lgeos.GEOSCoordSeq_getSize.restype = ctypes.c_int
|
|
61
|
+
lgeos.GEOSCoordSeq_getSize.argtypes = [ctypes.c_void_p, ctypes.c_void_p]
|
|
62
|
+
|
|
63
|
+
lgeos.GEOSCoordSeq_getDimensions.restype = ctypes.c_int
|
|
64
|
+
lgeos.GEOSCoordSeq_getDimensions.argtypes = [ctypes.c_void_p, ctypes.c_void_p]
|
|
65
|
+
|
|
66
|
+
lgeos.GEOSGeom_createPoint.restype = ctypes.c_void_p
|
|
67
|
+
lgeos.GEOSGeom_createPoint.argtypes = [ctypes.c_void_p]
|
|
68
|
+
|
|
69
|
+
lgeos.GEOSGeom_createLinearRing.restype = ctypes.c_void_p
|
|
70
|
+
lgeos.GEOSGeom_createLinearRing.argtypes = [ctypes.c_void_p]
|
|
71
|
+
|
|
72
|
+
lgeos.GEOSGeom_createLineString.restype = ctypes.c_void_p
|
|
73
|
+
lgeos.GEOSGeom_createLineString.argtypes = [ctypes.c_void_p]
|
|
74
|
+
|
|
75
|
+
lgeos.GEOSGeom_createPolygon.restype = ctypes.c_void_p
|
|
76
|
+
lgeos.GEOSGeom_createPolygon.argtypes = [ctypes.c_void_p, ctypes.c_void_p, ctypes.c_uint]
|
|
77
|
+
|
|
78
|
+
lgeos.GEOSGeom_createCollection.restype = ctypes.c_void_p
|
|
79
|
+
lgeos.GEOSGeom_createCollection.argtypes = [ctypes.c_int, ctypes.c_void_p, ctypes.c_uint]
|
|
80
|
+
|
|
81
|
+
lgeos.GEOSGeom_clone.restype = ctypes.c_void_p
|
|
82
|
+
lgeos.GEOSGeom_clone.argtypes = [ctypes.c_void_p]
|
|
83
|
+
|
|
84
|
+
lgeos.GEOSGeom_destroy.restype = None
|
|
85
|
+
lgeos.GEOSGeom_destroy.argtypes = [ctypes.c_void_p]
|
|
86
|
+
|
|
87
|
+
lgeos.GEOSEnvelope.restype = ctypes.c_void_p
|
|
88
|
+
lgeos.GEOSEnvelope.argtypes = [ctypes.c_void_p]
|
|
89
|
+
|
|
90
|
+
lgeos.GEOSIntersection.restype = ctypes.c_void_p
|
|
91
|
+
lgeos.GEOSIntersection.argtypes = [ctypes.c_void_p, ctypes.c_void_p]
|
|
92
|
+
|
|
93
|
+
lgeos.GEOSBuffer.restype = ctypes.c_void_p
|
|
94
|
+
lgeos.GEOSBuffer.argtypes = [ctypes.c_void_p, ctypes.c_double, ctypes.c_int]
|
|
95
|
+
|
|
96
|
+
lgeos.GEOSConvexHull.restype = ctypes.c_void_p
|
|
97
|
+
lgeos.GEOSConvexHull.argtypes = [ctypes.c_void_p]
|
|
98
|
+
|
|
99
|
+
lgeos.GEOSDifference.restype = ctypes.c_void_p
|
|
100
|
+
lgeos.GEOSDifference.argtypes = [ctypes.c_void_p, ctypes.c_void_p]
|
|
101
|
+
|
|
102
|
+
lgeos.GEOSSymDifference.restype = ctypes.c_void_p
|
|
103
|
+
lgeos.GEOSSymDifference.argtypes = [ctypes.c_void_p, ctypes.c_void_p]
|
|
104
|
+
|
|
105
|
+
lgeos.GEOSBoundary.restype = ctypes.c_void_p
|
|
106
|
+
lgeos.GEOSBoundary.argtypes = [ctypes.c_void_p]
|
|
107
|
+
|
|
108
|
+
lgeos.GEOSUnion.restype = ctypes.c_void_p
|
|
109
|
+
lgeos.GEOSUnion.argtypes = [ctypes.c_void_p, ctypes.c_void_p]
|
|
110
|
+
|
|
111
|
+
lgeos.GEOSPointOnSurface.restype = ctypes.c_void_p
|
|
112
|
+
lgeos.GEOSPointOnSurface.argtypes = [ctypes.c_void_p]
|
|
113
|
+
|
|
114
|
+
lgeos.GEOSGetCentroid.restype = ctypes.c_void_p
|
|
115
|
+
lgeos.GEOSGetCentroid.argtypes = [ctypes.c_void_p]
|
|
116
|
+
|
|
117
|
+
lgeos.GEOSRelate.restype = ctypes.c_char_p
|
|
118
|
+
lgeos.GEOSRelate.argtypes = [ctypes.c_void_p, ctypes.c_void_p]
|
|
119
|
+
|
|
120
|
+
lgeos.GEOSPolygonize.restype = ctypes.c_void_p
|
|
121
|
+
lgeos.GEOSPolygonize.argtypes = [ctypes.c_void_p, ctypes.c_uint]
|
|
122
|
+
|
|
123
|
+
lgeos.GEOSLineMerge.restype = ctypes.c_void_p
|
|
124
|
+
lgeos.GEOSLineMerge.argtypes = [ctypes.c_void_p]
|
|
125
|
+
|
|
126
|
+
lgeos.GEOSRelatePattern.restype = ctypes.c_char
|
|
127
|
+
lgeos.GEOSRelatePattern.argtypes = [ctypes.c_void_p, ctypes.c_void_p, ctypes.c_char_p]
|
|
128
|
+
|
|
129
|
+
lgeos.GEOSDisjoint.restype = ctypes.c_int
|
|
130
|
+
lgeos.GEOSDisjoint.argtypes = [ctypes.c_void_p, ctypes.c_void_p]
|
|
131
|
+
|
|
132
|
+
lgeos.GEOSTouches.restype = ctypes.c_int
|
|
133
|
+
lgeos.GEOSTouches.argtypes = [ctypes.c_void_p, ctypes.c_void_p]
|
|
134
|
+
|
|
135
|
+
lgeos.GEOSIntersects.restype = ctypes.c_int
|
|
136
|
+
lgeos.GEOSIntersects.argtypes = [ctypes.c_void_p, ctypes.c_void_p]
|
|
137
|
+
|
|
138
|
+
lgeos.GEOSCrosses.restype = ctypes.c_int
|
|
139
|
+
lgeos.GEOSCrosses.argtypes = [ctypes.c_void_p, ctypes.c_void_p]
|
|
140
|
+
|
|
141
|
+
lgeos.GEOSWithin.restype = ctypes.c_int
|
|
142
|
+
lgeos.GEOSWithin.argtypes = [ctypes.c_void_p, ctypes.c_void_p]
|
|
143
|
+
|
|
144
|
+
lgeos.GEOSContains.restype = ctypes.c_int
|
|
145
|
+
lgeos.GEOSContains.argtypes = [ctypes.c_void_p, ctypes.c_void_p]
|
|
146
|
+
|
|
147
|
+
lgeos.GEOSOverlaps.restype = ctypes.c_int
|
|
148
|
+
lgeos.GEOSOverlaps.argtypes = [ctypes.c_void_p, ctypes.c_void_p]
|
|
149
|
+
|
|
150
|
+
lgeos.GEOSEquals.restype = ctypes.c_int
|
|
151
|
+
lgeos.GEOSEquals.argtypes = [ctypes.c_void_p, ctypes.c_void_p]
|
|
152
|
+
|
|
153
|
+
lgeos.GEOSisEmpty.restype = ctypes.c_int
|
|
154
|
+
lgeos.GEOSisEmpty.argtypes = [ctypes.c_void_p]
|
|
155
|
+
|
|
156
|
+
lgeos.GEOSisValid.restype = ctypes.c_int
|
|
157
|
+
lgeos.GEOSisValid.argtypes = [ctypes.c_void_p]
|
|
158
|
+
|
|
159
|
+
lgeos.GEOSisSimple.restype = ctypes.c_int
|
|
160
|
+
lgeos.GEOSisSimple.argtypes = [ctypes.c_void_p]
|
|
161
|
+
|
|
162
|
+
lgeos.GEOSisRing.restype = ctypes.c_int
|
|
163
|
+
lgeos.GEOSisRing.argtypes = [ctypes.c_void_p]
|
|
164
|
+
|
|
165
|
+
lgeos.GEOSHasZ.restype = ctypes.c_int
|
|
166
|
+
lgeos.GEOSHasZ.argtypes = [ctypes.c_void_p]
|
|
167
|
+
|
|
168
|
+
lgeos.GEOSGeomType.restype = ctypes.c_char_p
|
|
169
|
+
lgeos.GEOSGeomType.argtypes = [ctypes.c_void_p]
|
|
170
|
+
|
|
171
|
+
lgeos.GEOSGeomTypeId.restype = ctypes.c_int
|
|
172
|
+
lgeos.GEOSGeomTypeId.argtypes = [ctypes.c_void_p]
|
|
173
|
+
|
|
174
|
+
lgeos.GEOSGetSRID.restype = ctypes.c_int
|
|
175
|
+
lgeos.GEOSGetSRID.argtypes = [ctypes.c_void_p]
|
|
176
|
+
|
|
177
|
+
lgeos.GEOSSetSRID.restype = None
|
|
178
|
+
lgeos.GEOSSetSRID.argtypes = [ctypes.c_void_p, ctypes.c_int]
|
|
179
|
+
|
|
180
|
+
lgeos.GEOSGetNumGeometries.restype = ctypes.c_int
|
|
181
|
+
lgeos.GEOSGetNumGeometries.argtypes = [ctypes.c_void_p]
|
|
182
|
+
|
|
183
|
+
lgeos.GEOSGetGeometryN.restype = ctypes.c_void_p
|
|
184
|
+
lgeos.GEOSGetGeometryN.argtypes = [ctypes.c_void_p, ctypes.c_int]
|
|
185
|
+
|
|
186
|
+
lgeos.GEOSGetNumInteriorRings.restype = ctypes.c_int
|
|
187
|
+
lgeos.GEOSGetNumInteriorRings.argtypes = [ctypes.c_void_p]
|
|
188
|
+
|
|
189
|
+
lgeos.GEOSGetInteriorRingN.restype = ctypes.c_void_p
|
|
190
|
+
lgeos.GEOSGetInteriorRingN.argtypes = [ctypes.c_void_p, ctypes.c_int]
|
|
191
|
+
|
|
192
|
+
lgeos.GEOSGetExteriorRing.restype = ctypes.c_void_p
|
|
193
|
+
lgeos.GEOSGetExteriorRing.argtypes = [ctypes.c_void_p]
|
|
194
|
+
|
|
195
|
+
lgeos.GEOSGetNumCoordinates.restype = ctypes.c_int
|
|
196
|
+
lgeos.GEOSGetNumCoordinates.argtypes = [ctypes.c_void_p]
|
|
197
|
+
|
|
198
|
+
lgeos.GEOSGeom_getCoordSeq.restype = ctypes.c_void_p
|
|
199
|
+
lgeos.GEOSGeom_getCoordSeq.argtypes = [ctypes.c_void_p]
|
|
200
|
+
|
|
201
|
+
lgeos.GEOSGeom_getDimensions.restype = ctypes.c_int
|
|
202
|
+
lgeos.GEOSGeom_getDimensions.argtypes = [ctypes.c_void_p]
|
|
203
|
+
|
|
204
|
+
lgeos.GEOSArea.restype = ctypes.c_double
|
|
205
|
+
lgeos.GEOSArea.argtypes = [ctypes.c_void_p, ctypes.c_void_p]
|
|
206
|
+
|
|
207
|
+
lgeos.GEOSLength.restype = ctypes.c_int
|
|
208
|
+
lgeos.GEOSLength.argtypes = [ctypes.c_void_p, ctypes.c_void_p]
|
|
209
|
+
|
|
210
|
+
lgeos.GEOSDistance.restype = ctypes.c_int
|
|
211
|
+
lgeos.GEOSDistance.argtypes = [ctypes.c_void_p, ctypes.c_void_p, ctypes.c_void_p]
|
|
212
|
+
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Base geometry class and utilities.
|
|
3
3
|
"""
|
|
4
4
|
|
|
5
|
-
from ctypes import string_at, byref, c_int, c_size_t, c_char_p, c_double
|
|
5
|
+
from ctypes import string_at, byref, c_int, c_size_t, c_char_p, c_double, c_void_p
|
|
6
6
|
import sys
|
|
7
7
|
|
|
8
8
|
from shapely.geos import lgeos, free, allocated_c_char_p
|
|
@@ -349,13 +349,14 @@ class BaseGeometry(object):
|
|
|
349
349
|
def to_wkb(self):
|
|
350
350
|
"""Returns a WKB byte string representation of the geometry."""
|
|
351
351
|
func = lgeos.GEOSGeomToWKB_buf
|
|
352
|
-
size =
|
|
352
|
+
size = c_size_t()
|
|
353
353
|
def errcheck(result, func, argtuple):
|
|
354
|
+
if not result: return None
|
|
354
355
|
retval = string_at(result, size.value)[:]
|
|
355
356
|
free(result)
|
|
356
357
|
return retval
|
|
357
358
|
func.errcheck = errcheck
|
|
358
|
-
return func(self._geom, byref(size))
|
|
359
|
+
return func(c_void_p(self._geom), byref(size))
|
|
359
360
|
|
|
360
361
|
@exceptNull
|
|
361
362
|
def to_wkt(self):
|
|
@@ -3,10 +3,13 @@ Exports the libgeos_c shared lib, GEOS-specific exceptions, and utilities.
|
|
|
3
3
|
"""
|
|
4
4
|
|
|
5
5
|
import atexit
|
|
6
|
+
from ctypes import cdll, CDLL, PyDLL, CFUNCTYPE, c_char_p, c_void_p
|
|
7
|
+
from ctypes.util import find_library
|
|
6
8
|
import os
|
|
7
9
|
import sys
|
|
8
|
-
|
|
9
|
-
from
|
|
10
|
+
|
|
11
|
+
from ctypes_declarations import prototype
|
|
12
|
+
|
|
10
13
|
|
|
11
14
|
if sys.platform == 'win32':
|
|
12
15
|
try:
|
|
@@ -40,6 +43,8 @@ elif sys.platform == 'darwin':
|
|
|
40
43
|
raise ImportError, "Could not find geos_c library"
|
|
41
44
|
lgeos = PyDLL(lib)
|
|
42
45
|
free = CDLL(find_library('libc')).free
|
|
46
|
+
free.argtypes=[c_void_p]
|
|
47
|
+
free.restype=None
|
|
43
48
|
else:
|
|
44
49
|
# Try the major versioned name first, falling back on the unversioned name.
|
|
45
50
|
try:
|
|
@@ -49,16 +54,17 @@ else:
|
|
|
49
54
|
except:
|
|
50
55
|
raise
|
|
51
56
|
free = CDLL('libc.so.6').free
|
|
57
|
+
free.argtypes=[c_void_p]
|
|
58
|
+
free.restype=None
|
|
52
59
|
|
|
60
|
+
# Prototype the libgeos_c functions using new code from `tarley` in
|
|
61
|
+
# http://trac.gispython.org/lab/ticket/189
|
|
62
|
+
prototype(lgeos)
|
|
53
63
|
|
|
54
|
-
# Load the ctypes restype and argtype declarations for geos_c functions.
|
|
55
|
-
_here = os.path.abspath(os.path.dirname(__file__))
|
|
56
|
-
execfile(os.path.join(_here, 'ctypes_declarations.py'))
|
|
57
64
|
|
|
58
65
|
class allocated_c_char_p(c_char_p):
|
|
59
66
|
pass
|
|
60
67
|
|
|
61
|
-
|
|
62
68
|
# Exceptions
|
|
63
69
|
|
|
64
70
|
class ReadingError(Exception):
|
|
@@ -3,6 +3,7 @@ Load/dump geometries using the well-known binary (WKB) format.
|
|
|
3
3
|
"""
|
|
4
4
|
|
|
5
5
|
from ctypes import byref, c_int, c_size_t, c_char_p, string_at
|
|
6
|
+
from ctypes import c_void_p, c_size_t
|
|
6
7
|
|
|
7
8
|
from shapely.geos import lgeos, free, ReadingError
|
|
8
9
|
from shapely.geometry.base import geom_factory
|
|
@@ -26,13 +27,14 @@ def load(fp):
|
|
|
26
27
|
def dumps(ob):
|
|
27
28
|
"""Dump a WKB representation of a geometry to a byte string."""
|
|
28
29
|
func = lgeos.GEOSGeomToWKB_buf
|
|
29
|
-
size =
|
|
30
|
+
size = c_size_t()
|
|
30
31
|
def errcheck(result, func, argtuple):
|
|
32
|
+
if not result: return None
|
|
31
33
|
retval = string_at(result, size.value)[:]
|
|
32
34
|
free(result)
|
|
33
35
|
return retval
|
|
34
36
|
func.errcheck = errcheck
|
|
35
|
-
return func(ob._geom, byref(size))
|
|
37
|
+
return func(c_void_p(ob._geom), byref(size))
|
|
36
38
|
|
|
37
39
|
def dump(ob, fp):
|
|
38
40
|
"""Dump a geometry to an open file."""
|
|
@@ -3,9 +3,11 @@ Test locale independence of WKT
|
|
|
3
3
|
|
|
4
4
|
Set locale to one that uses a comma as decimal seperator`
|
|
5
5
|
|
|
6
|
-
>>> import locale
|
|
7
|
-
>>>
|
|
8
|
-
'
|
|
6
|
+
>>> import locale, sys
|
|
7
|
+
>>> if sys.platform == 'win32':
|
|
8
|
+
... _ = locale.setlocale(locale.LC_ALL, 'portuguese-brazil')
|
|
9
|
+
... else:
|
|
10
|
+
... _ = locale.setlocale(locale.LC_ALL, 'pt_BR.UTF-8')
|
|
9
11
|
|
|
10
12
|
Test reading and writing`
|
|
11
13
|
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
setuptools
|
|
@@ -1,204 +0,0 @@
|
|
|
1
|
-
import ctypes
|
|
2
|
-
|
|
3
|
-
lgeos = lgeos # reduce pyflakes complaints
|
|
4
|
-
|
|
5
|
-
lgeos.initGEOS.restype = None
|
|
6
|
-
|
|
7
|
-
lgeos.finishGEOS.restype = None
|
|
8
|
-
|
|
9
|
-
lgeos.GEOSversion.restype = ctypes.c_char_p
|
|
10
|
-
|
|
11
|
-
lgeos.GEOSGeomFromWKT.restype = ctypes.c_void_p
|
|
12
|
-
lgeos.GEOSGeomFromWKT.argtypes = [ctypes.c_char_p]
|
|
13
|
-
|
|
14
|
-
lgeos.GEOSGeomToWKT.restype = ctypes.c_char_p
|
|
15
|
-
lgeos.GEOSGeomToWKT.argtypes = [ctypes.c_void_p]
|
|
16
|
-
|
|
17
|
-
lgeos.GEOS_setWKBOutputDims.restype = ctypes.c_int
|
|
18
|
-
lgeos.GEOS_setWKBOutputDims.argtypes = [ctypes.c_int]
|
|
19
|
-
|
|
20
|
-
lgeos.GEOSGeomFromWKB_buf.restype = ctypes.c_void_p
|
|
21
|
-
lgeos.GEOSGeomFromWKB_buf.argtypes = [ctypes.c_void_p, ctypes.c_size_t]
|
|
22
|
-
|
|
23
|
-
lgeos.GEOSCoordSeq_create.restype = ctypes.c_void_p
|
|
24
|
-
lgeos.GEOSCoordSeq_create.argtypes = [ctypes.c_uint, ctypes.c_uint]
|
|
25
|
-
|
|
26
|
-
lgeos.GEOSCoordSeq_clone.restype = ctypes.c_void_p
|
|
27
|
-
lgeos.GEOSCoordSeq_clone.argtypes = [ctypes.c_void_p]
|
|
28
|
-
|
|
29
|
-
lgeos.GEOSCoordSeq_destroy.restype = None
|
|
30
|
-
lgeos.GEOSCoordSeq_destroy.argtypes = [ctypes.c_void_p]
|
|
31
|
-
|
|
32
|
-
lgeos.GEOSCoordSeq_setX.restype = ctypes.c_int
|
|
33
|
-
lgeos.GEOSCoordSeq_setX.argtypes = [ctypes.c_void_p, ctypes.c_uint, ctypes.c_double]
|
|
34
|
-
|
|
35
|
-
lgeos.GEOSCoordSeq_setY.restype = ctypes.c_int
|
|
36
|
-
lgeos.GEOSCoordSeq_setY.argtypes = [ctypes.c_void_p, ctypes.c_uint, ctypes.c_double]
|
|
37
|
-
|
|
38
|
-
lgeos.GEOSCoordSeq_setZ.restype = ctypes.c_int
|
|
39
|
-
lgeos.GEOSCoordSeq_setZ.argtypes = [ctypes.c_void_p, ctypes.c_uint, ctypes.c_double]
|
|
40
|
-
|
|
41
|
-
lgeos.GEOSCoordSeq_setOrdinate.restype = ctypes.c_int
|
|
42
|
-
lgeos.GEOSCoordSeq_setOrdinate.argtypes = [ctypes.c_void_p, ctypes.c_uint, ctypes.c_uint, ctypes.c_double]
|
|
43
|
-
|
|
44
|
-
lgeos.GEOSCoordSeq_getX.restype = ctypes.c_int
|
|
45
|
-
lgeos.GEOSCoordSeq_getX.argtypes = [ctypes.c_void_p, ctypes.c_uint, ctypes.c_void_p]
|
|
46
|
-
|
|
47
|
-
lgeos.GEOSCoordSeq_getY.restype = ctypes.c_int
|
|
48
|
-
lgeos.GEOSCoordSeq_getY.argtypes = [ctypes.c_void_p, ctypes.c_uint, ctypes.c_void_p]
|
|
49
|
-
|
|
50
|
-
lgeos.GEOSCoordSeq_getZ.restype = ctypes.c_int
|
|
51
|
-
lgeos.GEOSCoordSeq_getZ.argtypes = [ctypes.c_void_p, ctypes.c_uint, ctypes.c_void_p]
|
|
52
|
-
|
|
53
|
-
lgeos.GEOSCoordSeq_getSize.restype = ctypes.c_int
|
|
54
|
-
lgeos.GEOSCoordSeq_getSize.argtypes = [ctypes.c_void_p, ctypes.c_void_p]
|
|
55
|
-
|
|
56
|
-
lgeos.GEOSCoordSeq_getDimensions.restype = ctypes.c_int
|
|
57
|
-
lgeos.GEOSCoordSeq_getDimensions.argtypes = [ctypes.c_void_p, ctypes.c_void_p]
|
|
58
|
-
|
|
59
|
-
lgeos.GEOSGeom_createPoint.restype = ctypes.c_void_p
|
|
60
|
-
lgeos.GEOSGeom_createPoint.argtypes = [ctypes.c_void_p]
|
|
61
|
-
|
|
62
|
-
lgeos.GEOSGeom_createLinearRing.restype = ctypes.c_void_p
|
|
63
|
-
lgeos.GEOSGeom_createLinearRing.argtypes = [ctypes.c_void_p]
|
|
64
|
-
|
|
65
|
-
lgeos.GEOSGeom_createLineString.restype = ctypes.c_void_p
|
|
66
|
-
lgeos.GEOSGeom_createLineString.argtypes = [ctypes.c_void_p]
|
|
67
|
-
|
|
68
|
-
lgeos.GEOSGeom_createPolygon.restype = ctypes.c_void_p
|
|
69
|
-
lgeos.GEOSGeom_createPolygon.argtypes = [ctypes.c_void_p, ctypes.c_void_p, ctypes.c_uint]
|
|
70
|
-
|
|
71
|
-
lgeos.GEOSGeom_createCollection.restype = ctypes.c_void_p
|
|
72
|
-
lgeos.GEOSGeom_createCollection.argtypes = [ctypes.c_int, ctypes.c_void_p, ctypes.c_uint]
|
|
73
|
-
|
|
74
|
-
lgeos.GEOSGeom_clone.restype = ctypes.c_void_p
|
|
75
|
-
lgeos.GEOSGeom_clone.argtypes = [ctypes.c_void_p]
|
|
76
|
-
|
|
77
|
-
lgeos.GEOSGeom_destroy.restype = None
|
|
78
|
-
lgeos.GEOSGeom_destroy.argtypes = [ctypes.c_void_p]
|
|
79
|
-
|
|
80
|
-
lgeos.GEOSEnvelope.restype = ctypes.c_void_p
|
|
81
|
-
lgeos.GEOSEnvelope.argtypes = [ctypes.c_void_p]
|
|
82
|
-
|
|
83
|
-
lgeos.GEOSIntersection.restype = ctypes.c_void_p
|
|
84
|
-
lgeos.GEOSIntersection.argtypes = [ctypes.c_void_p, ctypes.c_void_p]
|
|
85
|
-
|
|
86
|
-
lgeos.GEOSBuffer.restype = ctypes.c_void_p
|
|
87
|
-
lgeos.GEOSBuffer.argtypes = [ctypes.c_void_p, ctypes.c_double, ctypes.c_int]
|
|
88
|
-
|
|
89
|
-
lgeos.GEOSConvexHull.restype = ctypes.c_void_p
|
|
90
|
-
lgeos.GEOSConvexHull.argtypes = [ctypes.c_void_p]
|
|
91
|
-
|
|
92
|
-
lgeos.GEOSDifference.restype = ctypes.c_void_p
|
|
93
|
-
lgeos.GEOSDifference.argtypes = [ctypes.c_void_p, ctypes.c_void_p]
|
|
94
|
-
|
|
95
|
-
lgeos.GEOSSymDifference.restype = ctypes.c_void_p
|
|
96
|
-
lgeos.GEOSSymDifference.argtypes = [ctypes.c_void_p, ctypes.c_void_p]
|
|
97
|
-
|
|
98
|
-
lgeos.GEOSBoundary.restype = ctypes.c_void_p
|
|
99
|
-
lgeos.GEOSBoundary.argtypes = [ctypes.c_void_p]
|
|
100
|
-
|
|
101
|
-
lgeos.GEOSUnion.restype = ctypes.c_void_p
|
|
102
|
-
lgeos.GEOSUnion.argtypes = [ctypes.c_void_p, ctypes.c_void_p]
|
|
103
|
-
|
|
104
|
-
lgeos.GEOSPointOnSurface.restype = ctypes.c_void_p
|
|
105
|
-
lgeos.GEOSPointOnSurface.argtypes = [ctypes.c_void_p]
|
|
106
|
-
|
|
107
|
-
lgeos.GEOSGetCentroid.restype = ctypes.c_void_p
|
|
108
|
-
lgeos.GEOSGetCentroid.argtypes = [ctypes.c_void_p]
|
|
109
|
-
|
|
110
|
-
lgeos.GEOSRelate.restype = ctypes.c_char_p
|
|
111
|
-
lgeos.GEOSRelate.argtypes = [ctypes.c_void_p, ctypes.c_void_p]
|
|
112
|
-
|
|
113
|
-
lgeos.GEOSPolygonize.restype = ctypes.c_void_p
|
|
114
|
-
lgeos.GEOSPolygonize.argtypes = [ctypes.c_void_p, ctypes.c_uint]
|
|
115
|
-
|
|
116
|
-
lgeos.GEOSLineMerge.restype = ctypes.c_void_p
|
|
117
|
-
lgeos.GEOSLineMerge.argtypes = [ctypes.c_void_p]
|
|
118
|
-
|
|
119
|
-
lgeos.GEOSRelatePattern.restype = ctypes.c_char
|
|
120
|
-
lgeos.GEOSRelatePattern.argtypes = [ctypes.c_void_p, ctypes.c_void_p, ctypes.c_char_p]
|
|
121
|
-
|
|
122
|
-
lgeos.GEOSDisjoint.restype = ctypes.c_int
|
|
123
|
-
lgeos.GEOSDisjoint.argtypes = [ctypes.c_void_p, ctypes.c_void_p]
|
|
124
|
-
|
|
125
|
-
lgeos.GEOSTouches.restype = ctypes.c_int
|
|
126
|
-
lgeos.GEOSTouches.argtypes = [ctypes.c_void_p, ctypes.c_void_p]
|
|
127
|
-
|
|
128
|
-
lgeos.GEOSIntersects.restype = ctypes.c_int
|
|
129
|
-
lgeos.GEOSIntersects.argtypes = [ctypes.c_void_p, ctypes.c_void_p]
|
|
130
|
-
|
|
131
|
-
lgeos.GEOSCrosses.restype = ctypes.c_int
|
|
132
|
-
lgeos.GEOSCrosses.argtypes = [ctypes.c_void_p, ctypes.c_void_p]
|
|
133
|
-
|
|
134
|
-
lgeos.GEOSWithin.restype = ctypes.c_int
|
|
135
|
-
lgeos.GEOSWithin.argtypes = [ctypes.c_void_p, ctypes.c_void_p]
|
|
136
|
-
|
|
137
|
-
lgeos.GEOSContains.restype = ctypes.c_int
|
|
138
|
-
lgeos.GEOSContains.argtypes = [ctypes.c_void_p, ctypes.c_void_p]
|
|
139
|
-
|
|
140
|
-
lgeos.GEOSOverlaps.restype = ctypes.c_int
|
|
141
|
-
lgeos.GEOSOverlaps.argtypes = [ctypes.c_void_p, ctypes.c_void_p]
|
|
142
|
-
|
|
143
|
-
lgeos.GEOSEquals.restype = ctypes.c_int
|
|
144
|
-
lgeos.GEOSEquals.argtypes = [ctypes.c_void_p, ctypes.c_void_p]
|
|
145
|
-
|
|
146
|
-
lgeos.GEOSisEmpty.restype = ctypes.c_int
|
|
147
|
-
lgeos.GEOSisEmpty.argtypes = [ctypes.c_void_p]
|
|
148
|
-
|
|
149
|
-
lgeos.GEOSisValid.restype = ctypes.c_int
|
|
150
|
-
lgeos.GEOSisValid.argtypes = [ctypes.c_void_p]
|
|
151
|
-
|
|
152
|
-
lgeos.GEOSisSimple.restype = ctypes.c_int
|
|
153
|
-
lgeos.GEOSisSimple.argtypes = [ctypes.c_void_p]
|
|
154
|
-
|
|
155
|
-
lgeos.GEOSisRing.restype = ctypes.c_int
|
|
156
|
-
lgeos.GEOSisRing.argtypes = [ctypes.c_void_p]
|
|
157
|
-
|
|
158
|
-
lgeos.GEOSHasZ.restype = ctypes.c_int
|
|
159
|
-
lgeos.GEOSHasZ.argtypes = [ctypes.c_void_p]
|
|
160
|
-
|
|
161
|
-
lgeos.GEOSGeomType.restype = ctypes.c_char_p
|
|
162
|
-
lgeos.GEOSGeomType.argtypes = [ctypes.c_void_p]
|
|
163
|
-
|
|
164
|
-
lgeos.GEOSGeomTypeId.restype = ctypes.c_int
|
|
165
|
-
lgeos.GEOSGeomTypeId.argtypes = [ctypes.c_void_p]
|
|
166
|
-
|
|
167
|
-
lgeos.GEOSGetSRID.restype = ctypes.c_int
|
|
168
|
-
lgeos.GEOSGetSRID.argtypes = [ctypes.c_void_p]
|
|
169
|
-
|
|
170
|
-
lgeos.GEOSSetSRID.restype = None
|
|
171
|
-
lgeos.GEOSSetSRID.argtypes = [ctypes.c_void_p, ctypes.c_int]
|
|
172
|
-
|
|
173
|
-
lgeos.GEOSGetNumGeometries.restype = ctypes.c_int
|
|
174
|
-
lgeos.GEOSGetNumGeometries.argtypes = [ctypes.c_void_p]
|
|
175
|
-
|
|
176
|
-
lgeos.GEOSGetGeometryN.restype = ctypes.c_void_p
|
|
177
|
-
lgeos.GEOSGetGeometryN.argtypes = [ctypes.c_void_p, ctypes.c_int]
|
|
178
|
-
|
|
179
|
-
lgeos.GEOSGetNumInteriorRings.restype = ctypes.c_int
|
|
180
|
-
lgeos.GEOSGetNumInteriorRings.argtypes = [ctypes.c_void_p]
|
|
181
|
-
|
|
182
|
-
lgeos.GEOSGetInteriorRingN.restype = ctypes.c_void_p
|
|
183
|
-
lgeos.GEOSGetInteriorRingN.argtypes = [ctypes.c_void_p, ctypes.c_int]
|
|
184
|
-
|
|
185
|
-
lgeos.GEOSGetExteriorRing.restype = ctypes.c_void_p
|
|
186
|
-
lgeos.GEOSGetExteriorRing.argtypes = [ctypes.c_void_p]
|
|
187
|
-
|
|
188
|
-
lgeos.GEOSGetNumCoordinates.restype = ctypes.c_int
|
|
189
|
-
lgeos.GEOSGetNumCoordinates.argtypes = [ctypes.c_void_p]
|
|
190
|
-
|
|
191
|
-
lgeos.GEOSGeom_getCoordSeq.restype = ctypes.c_void_p
|
|
192
|
-
lgeos.GEOSGeom_getCoordSeq.argtypes = [ctypes.c_void_p]
|
|
193
|
-
|
|
194
|
-
lgeos.GEOSGeom_getDimensions.restype = ctypes.c_int
|
|
195
|
-
lgeos.GEOSGeom_getDimensions.argtypes = [ctypes.c_void_p]
|
|
196
|
-
|
|
197
|
-
lgeos.GEOSArea.restype = ctypes.c_double
|
|
198
|
-
lgeos.GEOSArea.argtypes = [ctypes.c_void_p, ctypes.c_void_p]
|
|
199
|
-
|
|
200
|
-
lgeos.GEOSLength.restype = ctypes.c_int
|
|
201
|
-
lgeos.GEOSLength.argtypes = [ctypes.c_void_p, ctypes.c_void_p]
|
|
202
|
-
|
|
203
|
-
lgeos.GEOSDistance.restype = ctypes.c_int
|
|
204
|
-
lgeos.GEOSDistance.argtypes = [ctypes.c_void_p, ctypes.c_void_p, ctypes.c_void_p]
|
|
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
|