shapely 1.2.14__py2.7-win32.egg → 1.2.18__py2.7-win32.egg

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.
Files changed (124) hide show
  1. EGG-INFO/PKG-INFO +452 -381
  2. EGG-INFO/SOURCES.txt +96 -0
  3. EGG-INFO/dependency_links.txt +1 -0
  4. EGG-INFO/native_libs.txt +2 -0
  5. EGG-INFO/not-zip-safe +1 -1
  6. EGG-INFO/top_level.txt +1 -0
  7. shapely/DLLs/geos.dll +0 -0
  8. shapely/DLLs/geos_c.dll +0 -0
  9. shapely/__init__.py +1 -2
  10. shapely/__init__.pyc +0 -0
  11. shapely/affinity.py +252 -0
  12. shapely/affinity.pyc +0 -0
  13. shapely/algorithms/__init__.pyc +0 -0
  14. shapely/algorithms/cga.pyc +0 -0
  15. shapely/coords.py +15 -0
  16. shapely/coords.pyc +0 -0
  17. shapely/ctypes_declarations.py +16 -3
  18. shapely/ctypes_declarations.pyc +0 -0
  19. shapely/examples/__init__.pyc +0 -0
  20. shapely/examples/dissolve.pyc +0 -0
  21. shapely/examples/geoms.pyc +0 -0
  22. shapely/examples/intersect.pyc +0 -0
  23. shapely/examples/world.pyc +0 -0
  24. shapely/ftools.pyc +0 -0
  25. shapely/geometry/__init__.py +4 -4
  26. shapely/geometry/__init__.pyc +0 -0
  27. shapely/geometry/base.py +127 -38
  28. shapely/geometry/base.pyc +0 -0
  29. shapely/geometry/collection.pyc +0 -0
  30. shapely/geometry/geo.py +2 -2
  31. shapely/geometry/geo.pyc +0 -0
  32. shapely/geometry/linestring.py +24 -19
  33. shapely/geometry/linestring.pyc +0 -0
  34. shapely/geometry/multilinestring.py +1 -1
  35. shapely/geometry/multilinestring.pyc +0 -0
  36. shapely/geometry/multipoint.py +4 -0
  37. shapely/geometry/multipoint.pyc +0 -0
  38. shapely/geometry/multipolygon.py +7 -4
  39. shapely/geometry/multipolygon.pyc +0 -0
  40. shapely/geometry/point.py +7 -0
  41. shapely/geometry/point.pyc +0 -0
  42. shapely/geometry/polygon.py +11 -1
  43. shapely/geometry/polygon.pyc +0 -0
  44. shapely/geometry/proxy.py +1 -3
  45. shapely/geometry/proxy.pyc +0 -0
  46. shapely/geos.py +45 -14
  47. shapely/geos.pyc +0 -0
  48. shapely/impl.py +8 -5
  49. shapely/impl.pyc +0 -0
  50. shapely/iterops.pyc +0 -0
  51. shapely/linref.pyc +0 -0
  52. shapely/ops.py +125 -3
  53. shapely/ops.pyc +0 -0
  54. shapely/predicates.pyc +0 -0
  55. shapely/prepared.pyc +0 -0
  56. shapely/speedups/__init__.pyc +0 -0
  57. shapely/speedups/_speedups.c +5201 -0
  58. shapely/speedups/_speedups.pyc +0 -0
  59. shapely/speedups/_speedups.pyd +0 -0
  60. shapely/tests/Array.txt +86 -0
  61. shapely/tests/GeoInterface.txt +69 -0
  62. shapely/tests/IterOps.txt +31 -0
  63. shapely/tests/LineString.txt +134 -0
  64. shapely/tests/MultiLineString.txt +81 -0
  65. shapely/tests/MultiPoint.txt +101 -0
  66. shapely/tests/MultiPolygon.txt +71 -0
  67. shapely/tests/Operations.txt +89 -0
  68. shapely/tests/Operators.txt +18 -0
  69. shapely/tests/Persist.txt +35 -0
  70. shapely/tests/Point.txt +148 -0
  71. shapely/tests/Polygon.txt +143 -0
  72. shapely/tests/Predicates.txt +51 -0
  73. shapely/tests/__init__.py +8 -0
  74. shapely/tests/__init__.pyc +0 -0
  75. shapely/tests/attribute-chains.txt +38 -0
  76. shapely/tests/binascii_hex.txt +47 -0
  77. shapely/tests/cascaded_union.txt +26 -0
  78. shapely/tests/dimensions.txt +17 -0
  79. shapely/tests/invalid_intersection.txt +29 -0
  80. shapely/tests/linemerge.txt +61 -0
  81. shapely/tests/polygonize.txt +40 -0
  82. shapely/tests/test_affinity.py +239 -0
  83. shapely/tests/test_affinity.pyc +0 -0
  84. shapely/tests/test_box.pyc +0 -0
  85. shapely/tests/test_cga.pyc +0 -0
  86. shapely/tests/test_collection.py +15 -0
  87. shapely/tests/test_collection.pyc +0 -0
  88. shapely/tests/test_delegated.pyc +0 -0
  89. shapely/tests/test_dlls.py +1 -1
  90. shapely/tests/test_dlls.pyc +0 -0
  91. shapely/tests/test_doctests.pyc +0 -0
  92. shapely/tests/test_emptiness.py +41 -8
  93. shapely/tests/test_emptiness.pyc +0 -0
  94. shapely/tests/test_equality.pyc +0 -0
  95. shapely/tests/test_geomseq.pyc +0 -0
  96. shapely/tests/test_getitem.pyc +0 -0
  97. shapely/tests/test_linear_referencing.pyc +0 -0
  98. shapely/tests/test_mapping.pyc +0 -0
  99. shapely/tests/test_ndarrays.py +35 -0
  100. shapely/tests/test_ndarrays.pyc +0 -0
  101. shapely/tests/test_pickle.py +15 -0
  102. shapely/tests/test_pickle.pyc +0 -0
  103. shapely/tests/test_prepared.pyc +0 -0
  104. shapely/tests/test_products_z.pyc +0 -0
  105. shapely/tests/test_singularity.pyc +0 -0
  106. shapely/tests/test_speedups.pyc +0 -0
  107. shapely/tests/test_styles.py +17 -0
  108. shapely/tests/test_styles.pyc +0 -0
  109. shapely/tests/test_transform.py +61 -0
  110. shapely/tests/test_transform.pyc +0 -0
  111. shapely/tests/test_unary_union.py +40 -0
  112. shapely/tests/test_unary_union.pyc +0 -0
  113. shapely/tests/test_validation.pyc +0 -0
  114. shapely/tests/test_xy.pyc +0 -0
  115. shapely/tests/threading_test.pyc +0 -0
  116. shapely/tests/wkt_locale.txt +28 -0
  117. shapely/topology.pyc +0 -0
  118. shapely/validation.pyc +0 -0
  119. shapely/wkb.py +3 -17
  120. shapely/wkb.pyc +0 -0
  121. shapely/wkt.py +3 -13
  122. shapely/wkt.pyc +0 -0
  123. DLLs/geos.dll +0 -0
  124. DLLs/geos_c.dll +0 -0
EGG-INFO/PKG-INFO CHANGED
@@ -1,389 +1,460 @@
1
- Metadata-Version: 1.0
1
+ Metadata-Version: 1.1
2
2
  Name: Shapely
3
- Version: 1.2.14
3
+ Version: 1.2.18
4
4
  Summary: Geometric objects, predicates, and operations
5
- Home-page: https://github.com/sgillies/shapely
5
+ Home-page: https://github.com/Toblerity/Shapely
6
6
  Author: Sean Gillies
7
7
  Author-email: sean.gillies@gmail.com
8
8
  License: BSD
9
- Description: ======
10
- README
11
- ======
12
-
13
- PostGIS-ish operations outside a database context for Pythoneers and
14
- Pythonistas.
15
-
16
- .. image:: http://farm3.static.flickr.com/2738/4511827859_b5822043b7_o_d.png
17
- :width: 800
18
- :height: 400
19
-
20
- Shapely is a BSD-licensed Python package for manipulation and analysis of
21
- planar geometric objects. It is based on the widely deployed GEOS_ (the engine
22
- of PostGIS_) and JTS_ (from which GEOS is ported) libraries. This C dependency
23
- is traded for the ability to execute with blazing speed. Shapely is not
24
- concerned with data formats or coordinate systems, but can be readily
25
- integrated with packages that are. For more details, see:
26
-
27
- * Shapely wiki_
28
- * Shapely manual_
29
- * Shapely `example apps`_
30
-
31
- Dependencies
32
- ============
33
-
34
- Shapely 1.2 depends on:
35
-
36
- * Python >=2.5,<3
37
- * libgeos_c >=3.1 (3.0 and below have not been tested, YMMV)
38
-
39
- Installation
40
- ============
41
-
42
- Windows users should use the executable installer, which contains the required
43
- GEOS DLL. Other users should acquire libgeos_c by any means, make sure that it
44
- is on the system library path, and install from the Python package index::
45
-
46
- $ pip install Shapely
47
-
48
- or from a source distribution with the setup script::
49
-
50
- $ python setup.py install
51
-
52
- Usage
53
- =====
54
-
55
- Here is the canonical example of building an approximately circular patch by
56
- buffering a point::
57
-
58
- >>> from shapely.geometry import Point
59
- >>> patch = Point(0.0, 0.0).buffer(10.0)
60
- >>> patch
61
- <shapely.geometry.polygon.Polygon object at 0x...>
62
- >>> patch.area
63
- 313.65484905459385
64
-
65
- See the manual_ for comprehensive usage snippets and the dissolve.py and
66
- intersect.py `example apps`_.
67
-
68
- Integration
69
- ===========
70
-
71
- Shapely does not read or write data files, but it can serialize and deserialize
72
- using several well known formats and protocols. The shapely.wkb and shapely.wkt
73
- modules provide dumpers and loaders inspired by Python's pickle module.::
74
-
75
- >>> from shapely.wkt import dumps, loads
76
- >>> dumps(loads('POINT (0 0)'))
77
- 'POINT (0.0000000000000000 0.0000000000000000)'
78
-
79
- All linear objects, such as the rings of a polygon (like ``patch`` above),
80
- provide the Numpy array interface.::
81
-
82
- >>> from numpy import asarray
83
- >>> ag = asarray(patch.exterior)
84
- >>> ag
85
- array([[ 1.00000000e+01, 0.00000000e+00],
86
- [ 9.95184727e+00, -9.80171403e-01],
87
- [ 9.80785280e+00, -1.95090322e+00],
88
- ...
89
- [ 1.00000000e+01, 0.00000000e+00]])
90
-
91
- That yields a numpy array of [x, y] arrays. This is not always exactly what one
92
- wants for plotting shapes with Matplotlib (for example), so Shapely 1.2 adds
93
- a `xy` property for obtaining separate arrays of coordinate x and y values.::
94
-
95
- >>> x, y = patch.exterior.xy
96
- >>> ax = asarray(x)
97
- >>> ax
98
- array([ 1.00000000e+01, 9.95184727e+00, 9.80785280e+00, ...])
99
-
100
- Numpy arrays can also be adapted to Shapely linestrings::
101
-
102
- >>> from shapely.geometry import asLineString
103
- >>> asLineString(ag).length
104
- 62.806623139095073
105
- >>> asLineString(ag).wkt
106
- 'LINESTRING (10.0000000000000000 0.0000000000000000, ...)'
107
-
108
- Testing
109
- =======
110
-
111
- Shapely uses a Zope-stye suite of unittests and doctests, exercised via
112
- setup.py.::
113
-
114
- $ python setup.py test
115
-
116
- Nosetests won't run the tests properly; Zope doctest suites are not currently
117
- supported well by nose.
118
-
119
- Support
120
- =======
121
-
122
- Bugs may be reported and questions asked via https://github.com/Toblerity/Shapely.
123
-
124
- Credits
125
- =======
126
-
127
- Shapely is written by:
128
-
129
- * Sean Gillies
130
- * Aron Bierbaum
131
- * Kai Lautaportti
132
- * Oliver Tonnhofer
133
-
134
- Patches contributed by:
135
-
136
- * Howard Butler
137
- * Frédéric Junod
138
- * Éric Lemoine
139
- * Jonathan Tartley
140
- * Kristian Thy
141
- * Mike Toews (https://github.com/mwtoews)
142
-
143
- Additional help from:
144
-
145
- * Justin Bronn (GeoDjango) for ctypes inspiration
146
- * Martin Davis (JTS)
147
- * Jaakko Salli for the Windows distributions
148
- * Sandro Santilli, Mateusz Loskot, Paul Ramsey, et al (GEOS_ Project)
149
-
150
- Major portions of this work were supported by a grant (for Pleiades_) from the
151
- U.S. National Endowment for the Humanities (http://www.neh.gov).
152
-
153
- .. _JTS: http://www.vividsolutions.com/jts/jtshome.htm
154
- .. _PostGIS: http://postgis.org
155
- .. _GEOS: http://trac.osgeo.org/geos/
156
- .. _example apps: http://trac.gispython.org/lab/wiki/Examples
157
- .. _wiki: http://trac.gispython.org/lab/wiki/Shapely
158
- .. _manual: http://toblerity.github.com/shapely/manual.html
159
- .. _Pleiades: http://pleiades.stoa.org
160
-
161
-
162
- Changes
163
- =======
164
-
165
- 1.2.14 (2012-01-23)
166
- -------------------
167
- - A geometry's coords property is now sliceable, yielding a list of coordinate
168
- values.
169
- - Homogeneous collections are now sliceable, yielding a new collection of the
170
- same type.
171
-
172
- 1.2.13 (2011-09-16)
173
- -------------------
174
- - Fixed errors in speedups on 32bit systems when GEOS references memory above
175
- 2GB.
176
- - Add shapely.__version__ attribute.
177
- - Update the manual.
178
-
179
- 1.2.12 (2011-08-15)
180
- -------------------
181
- - Build Windows distributions with VC7 or VC9 as appropriate.
182
- - More verbose report on failure to speed up.
183
- - Fix for prepared geometries broken in 1.2.11.
184
- - DO NOT INSTALL 1.2.11
185
-
186
- 1.2.11 (2011-08-04)
187
- -------------------
188
- - Ignore AttributeError during exit.
189
- - PyPy 1.5 support.
190
- - Prevent operation on prepared geometry crasher (#12).
191
- - Optional Cython speedups for Windows.
192
- - Linux 3 platform support.
193
-
194
- 1.2.10 (2011-05-09)
195
- -------------------
196
- - Add optional Cython speedups.
197
- - Add is_cww predicate to LinearRing.
198
- - Add function that forces orientation of Polygons.
199
- - Disable build of speedups on Windows pending packaging work.
200
-
201
- 1.2.9 (2011-03-31)
202
- ------------------
203
- - Remove extra glob import.
204
- - Move examples to shapely.examples.
205
- - Add box() constructor for rectangular polygons.
206
- - Fix extraneous imports.
207
-
208
- 1.2.8 (2011-12-03)
209
- ------------------
210
- - New parallel_offset method (#6).
211
- - Support for Python 2.4.
212
-
213
- 1.2.7 (2010-11-05)
214
- ------------------
215
- - Support for Windows eggs.
216
-
217
- 1.2.6 (2010-10-21)
218
- ------------------
219
- - The geoms property of an empty collection yields [] instead of a ValueError
220
- (#3).
221
- - The coords and geometry type sproperties have the same behavior as above.
222
- - Ensure that z values carry through into products of operations (#4).
223
-
224
- 1.2.5 (2010-09-19)
225
- ------------------
226
- - Stop distributing docs/_build.
227
- - Include library fallbacks in test_dlls.py for linux platform.
228
-
229
- 1.2.4 (2010-09-09)
230
- ------------------
231
- - Raise AttributeError when there's no backend support for a method.
232
- - Raise OSError if libgeos_c.so (or variants) can't be found and loaded.
233
- - Add geos_c DLL loading support for linux platforms where find_library doesn't
234
- work.
235
-
236
- 1.2.3 (2010-08-17)
237
- ------------------
238
- - Add mapping function.
239
- - Fix problem with GEOSisValidReason symbol for GEOS < 3.1.
240
-
241
- 1.2.2 (2010-07-23)
242
- ------------------
243
- - Add representative_point method.
244
-
245
- 1.2.1 (2010-06-23)
246
- ------------------
247
- - Fixed bounds of singular polygons.
248
- - Added shapely.validation.explain_validity function (#226).
249
-
250
- 1.2 (2010-05-27)
251
- ----------------
252
- - Final release.
253
-
254
- 1.2rc2 (2010-05-26)
255
- -------------------
256
- - Add examples and tests to MANIFEST.in.
257
- - Release candidate 2.
258
-
259
- 1.2rc1 (2010-05-25)
260
- -------------------
261
- - Release candidate.
262
-
263
- 1.2b7 (2010-04-22)
264
- ------------------
265
- - Memory leak associated with new empty geometry state fixed.
266
-
267
- 1.2b6 (2010-04-13)
268
- ------------------
269
- - Broken GeometryCollection fixed.
270
-
271
- 1.2b5 (2010-04-09)
272
- ------------------
273
- - Objects can be constructed from others of the same type, thereby making
274
- copies. Collections can be constructed from sequences of objects, also making
275
- copies.
276
- - Collections are now iterators over their component objects.
277
- - New code for manual figures, using the descartes package.
278
-
279
- 1.2b4 (2010-03-19)
280
- ------------------
281
- - Adds support for the "sunos5" platform.
282
-
283
- 1.2b3 (2010-02-28)
284
- ------------------
285
- - Only provide simplification implementations for GEOS C API >= 1.5.
286
-
287
- 1.2b2 (2010-02-19)
288
- ------------------
289
- - Fix cascaded_union bug introduced in 1.2b1 (#212).
290
-
291
- 1.2b1 (2010-02-18)
292
- ------------------
293
- - Update the README. Remove cruft from setup.py. Add some version 1.2 metadata
294
- regarding required Python version (>=2.5,<3) and external dependency
295
- (libgeos_c >= 3.1).
296
-
297
- 1.2a6 (2010-02-09)
298
- ------------------
299
- - Add accessor for separate arrays of X and Y values (#210).
300
-
301
- TODO: fill gap here
302
-
303
- 1.2a1 (2010-01-20)
304
- ------------------
305
- - Proper prototyping of WKB writer, and avoidance of errors on 64-bit systems
306
- (#191).
307
- - Prototype libgeos_c functions in a way that lets py2exe apps import shapely
308
- (#189).
309
-
310
- 1.2 Branched (2009-09-19)
311
-
312
- 1.0.12 (2009-04-09)
313
- -------------------
314
- - Fix for references held by topology and predicate descriptors.
315
-
316
- 1.0.11 (2008-11-20)
317
- -------------------
318
- - Work around bug in GEOS 2.2.3, GEOSCoordSeq_getOrdinate not exported properly
319
- (#178).
320
-
321
- 1.0.10 (2008-11-17)
322
- -------------------
323
- - Fixed compatibility with GEOS 2.2.3 that was broken in 1.0.8 release (#176).
324
-
325
- 1.0.9 (2008-11-16)
326
- ------------------
327
- - Find and load MacPorts libgeos.
328
-
329
- 1.0.8 (2008-11-01)
330
- ------------------
331
- - Fill out GEOS function result and argument types to prevent faults on a
332
- 64-bit arch.
333
-
334
- 1.0.7 (2008-08-22)
335
- ------------------
336
- - Polygon rings now have the same dimensions as parent (#168).
337
- - Eliminated reference cycles in polygons (#169).
338
-
339
- 1.0.6 (2008-07-10)
340
- ------------------
341
- - Fixed adaptation of multi polygon data.
342
- - Raise exceptions earlier from binary predicates.
343
- - Beginning distributing new windows DLLs (#166).
344
-
345
- 1.0.5 (2008-05-20)
346
- ------------------
347
- - Added access to GEOS polygonizer function.
348
- - Raise exception when insufficient coordinate tuples are passed to LinearRing
349
- constructor (#164).
350
-
351
- 1.0.4 (2008-05-01)
352
- ------------------
353
- - Disentangle Python and topological equality (#163).
354
- - Add shape(), a factory that copies coordinates from a geo interface provider.
355
- To be used instead of asShape() unless you really need to store coordinates
356
- outside shapely for efficient use in other code.
357
- - Cache GEOS geometries in adapters (#163).
358
-
359
- 1.0.3 (2008-04-09)
360
- ------------------
361
- - Do not release GIL when calling GEOS functions (#158).
362
- - Prevent faults when chaining multiple GEOS operators (#159).
363
-
364
- 1.0.2 (2008-02-26)
365
- ------------------
366
- - Fix loss of dimensionality in polygon rings (#155).
367
-
368
- 1.0.1 (2008-02-08)
369
- ------------------
370
- - Allow chaining expressions involving coordinate sequences and geometry parts
371
- (#151).
372
- - Protect against abnormal use of coordinate accessors (#152).
373
- - Coordinate sequences now implement the numpy array protocol (#153).
374
-
375
- 1.0 (2008-01-18)
376
- ----------------
377
- - Final release.
378
-
379
- 1.0 RC2 (2008-01-16)
380
- --------------------
381
- - Added temporary solution for #149.
382
-
383
- 1.0 RC1 (2008-01-14)
384
- --------------------
385
- - First release candidate
386
-
9
+ Description: =======
10
+ Shapely
11
+ =======
12
+
13
+ PostGIS-ish operations outside a database context for Pythoneers and
14
+ Pythonistas.
15
+
16
+ .. image:: http://farm3.staticflickr.com/2738/4511827859_b5822043b7_o_d.png
17
+ :width: 800
18
+ :height: 400
19
+
20
+ Shapely is a BSD-licensed Python package for manipulation and analysis of
21
+ planar geometric objects. It is based on the widely deployed GEOS_ (the engine
22
+ of PostGIS_) and JTS_ (from which GEOS is ported) libraries. This C dependency
23
+ is traded for the ability to execute with blazing speed. Shapely is not
24
+ concerned with data formats or coordinate systems, but can be readily
25
+ integrated with packages that are. For more details, see:
26
+
27
+ * Shapely manual_
28
+ * Shapely `example apps`_
29
+
30
+ Dependencies
31
+ ============
32
+
33
+ Shapely 1.2 depends on:
34
+
35
+ * Python >=2.5,<3
36
+ * libgeos_c >=3.1 (3.0 and below have not been tested, YMMV)
37
+
38
+ Installation
39
+ ============
40
+
41
+ Windows users should use the executable installer, which contains the required
42
+ GEOS DLL. Other users should acquire libgeos_c by any means, make sure that it
43
+ is on the system library path, and install from the Python package index::
44
+
45
+ $ pip install Shapely
46
+
47
+ or from a source distribution with the setup script::
48
+
49
+ $ python setup.py install
50
+
51
+ .. warning:: Windows users:
52
+ do not under any circumstances use pip (or easy_install) to uninstall
53
+ Shapely versions < 1.2.17. Due to the way Shapely used to install its GEOS
54
+ DLL and a distribute or setuptools bug, your Python installation may be
55
+ broken by an uninstall command. Shapely 1.2.17 will uninstall safely.
56
+
57
+ Usage
58
+ =====
59
+
60
+ Here is the canonical example of building an approximately circular patch by
61
+ buffering a point::
62
+
63
+ >>> from shapely.geometry import Point
64
+ >>> patch = Point(0.0, 0.0).buffer(10.0)
65
+ >>> patch
66
+ <shapely.geometry.polygon.Polygon object at 0x...>
67
+ >>> patch.area
68
+ 313.65484905459385
69
+
70
+ See the manual_ for comprehensive usage snippets and the dissolve.py and
71
+ intersect.py `example apps`_.
72
+
73
+ Integration
74
+ ===========
75
+
76
+ Shapely does not read or write data files, but it can serialize and deserialize
77
+ using several well known formats and protocols. The shapely.wkb and shapely.wkt
78
+ modules provide dumpers and loaders inspired by Python's pickle module.::
79
+
80
+ >>> from shapely.wkt import dumps, loads
81
+ >>> dumps(loads('POINT (0 0)'))
82
+ 'POINT (0.0000000000000000 0.0000000000000000)'
83
+
84
+ All linear objects, such as the rings of a polygon (like ``patch`` above),
85
+ provide the Numpy array interface.::
86
+
87
+ >>> from numpy import asarray
88
+ >>> ag = asarray(patch.exterior)
89
+ >>> ag
90
+ array([[ 1.00000000e+01, 0.00000000e+00],
91
+ [ 9.95184727e+00, -9.80171403e-01],
92
+ [ 9.80785280e+00, -1.95090322e+00],
93
+ ...
94
+ [ 1.00000000e+01, 0.00000000e+00]])
95
+
96
+ That yields a Numpy array of [x, y] arrays. This is not always exactly what one
97
+ wants for plotting shapes with Matplotlib (for example), so Shapely 1.2 adds
98
+ a `xy` property for obtaining separate arrays of coordinate x and y values.::
99
+
100
+ >>> x, y = patch.exterior.xy
101
+ >>> ax = asarray(x)
102
+ >>> ax
103
+ array([ 1.00000000e+01, 9.95184727e+00, 9.80785280e+00, ...])
104
+
105
+ Numpy arrays can also be adapted to Shapely linestrings::
106
+
107
+ >>> from shapely.geometry import asLineString
108
+ >>> asLineString(ag).length
109
+ 62.806623139095073
110
+ >>> asLineString(ag).wkt
111
+ 'LINESTRING (10.0000000000000000 0.0000000000000000, ...)'
112
+
113
+ Shapely can also integrate with other Python GIS packages using data modeled
114
+ after GeoJSON.
115
+
116
+ .. sourcecode:: pycon
117
+
118
+ >>> import json
119
+ >>> from shapely.geometry import mapping, shape
120
+ >>> s = shape(json.loads('{"type": "Point", "coordinates": [0.0, 0.0]}'))
121
+ >>> s
122
+ <shapely.geometry.point.Point object at 0x...>
123
+ >>> print(json.dumps(mapping(s)))
124
+ {"type": "Point", "coordinates": [0.0, 0.0]}
125
+
126
+ Testing
127
+ =======
128
+
129
+ Shapely uses a Zope-stye suite of unittests and doctests, exercised via
130
+ setup.py.::
131
+
132
+ $ python setup.py test
133
+
134
+ Nosetests won't run the tests properly; Zope doctest suites are not currently
135
+ supported well by nose.
136
+
137
+ Support
138
+ =======
139
+
140
+ Please discuss Shapely with us at
141
+ http://lists.gispython.org/mailman/listinfo/community.
142
+
143
+ Bugs may be reported at https://github.com/Toblerity/Shapely.
144
+
145
+
146
+
147
+ .. _JTS: http://www.vividsolutions.com/jts/jtshome.htm
148
+ .. _PostGIS: http://postgis.org
149
+ .. _GEOS: http://trac.osgeo.org/geos/
150
+ .. _example apps: https://github.com/sgillies/shapely/tree/master/shapely/examples
151
+ .. _manual: http://toblerity.github.com/shapely/manual.html
152
+ .. _Pleiades: http://pleiades.stoa.org
153
+
154
+
155
+ Credits
156
+ =======
157
+
158
+ Shapely is written by:
159
+
160
+ * Sean Gillies
161
+ * Aron Bierbaum
162
+ * Kai Lautaportti
163
+ * Oliver Tonnhofer
164
+
165
+ Patches contributed by:
166
+
167
+ * Howard Butler
168
+ * Fr |eaigue| d |eaigue| ric Junod
169
+ * Eric Lemoine
170
+ * Jonathan Tartley
171
+ * Kristian Thy
172
+ * Mike Toews (https://github.com/mwtoews)
173
+ * Phil Elson (https://github.com/pelson)
174
+ * Jeethu Rao (https://github.com/jeethu)
175
+
176
+ Additional help from:
177
+
178
+ * Justin Bronn (GeoDjango) for ctypes inspiration
179
+ * Martin Davis (JTS)
180
+ * Jaakko Salli for the Windows distributions
181
+ * Sandro Santilli, Mateusz Loskot, Paul Ramsey, et al (GEOS Project)
182
+
183
+ Major portions of this work were supported by a grant (for Pleiades_) from the
184
+ U.S. National Endowment for the Humanities (http://www.neh.gov).
185
+
186
+ .. |eaigue| unicode:: U+00E9
187
+ :trim:
188
+ .. _Pleiades: http://pleiades.stoa.org
189
+
190
+ Changes
191
+ =======
192
+
193
+ Next
194
+ ----
195
+ - Add buffering style options (#55).
196
+
197
+ 1.2.18 (2013-07-23)
198
+ --------------------
199
+ - Add shapely.ops.transform.
200
+ - Permit empty sequences in collection constructors (#49, #50).
201
+ - Individual polygons in MultiPolygon.__geo_interface__ are changed to tuples
202
+ to match Polygon.__geo_interface__ (#51).
203
+ - Add shapely.ops.polygonize_full (#57).
204
+
205
+ 1.2.17 (2013-01-27)
206
+ -------------------
207
+ - Avoid circular import between wkt/wkb and geometry.base by moving calls
208
+ to GEOS serializers to the latter module.
209
+ - Set _ndim when unpickling (issue #6).
210
+ - Don't install DLLs to Python's DLL directory (#37).
211
+ - Add affinity module of affine transformation (#31).
212
+ - Fix NameError that blocked installation with PyPy (#40, #41).
213
+
214
+ 1.2.16 (2012-09-18)
215
+ -------------------
216
+ - Add ops.unary_union function.
217
+ - Alias ops.cascaded_union to ops.unary_union when GEOS CAPI >= (1,7,0).
218
+ - Add geos_version_string attribute to shapely.geos.
219
+ - Ensure parent is set when child geometry is accessed.
220
+ - Generate _speedups.c using Cython when building from repo when missing,
221
+ stale, or the build target is "sdist".
222
+ - The is_simple predicate of invalid, self-intersecting linear rings now
223
+ returns ``False``.
224
+ - Remove VERSION.txt from repo, it's now written by the distutils setup script
225
+ with value of shapely.__version__.
226
+
227
+ 1.2.15 (2012-06-27)
228
+ -------------------
229
+ - Eliminate numerical sensitivity in a method chaining test (Debian bug
230
+ #663210).
231
+ - Account for cascaded union of random buffered test points being a polygon
232
+ or multipolygon (Debian bug #666655).
233
+ - Use Cython to build speedups if it is installed.
234
+ - Avoid stumbling over SVN revision numbers in GEOS C API version strings.
235
+
236
+ 1.2.14 (2012-01-23)
237
+ -------------------
238
+ - A geometry's coords property is now sliceable, yielding a list of coordinate
239
+ values.
240
+ - Homogeneous collections are now sliceable, yielding a new collection of the
241
+ same type.
242
+
243
+ 1.2.13 (2011-09-16)
244
+ -------------------
245
+ - Fixed errors in speedups on 32bit systems when GEOS references memory above
246
+ 2GB.
247
+ - Add shapely.__version__ attribute.
248
+ - Update the manual.
249
+
250
+ 1.2.12 (2011-08-15)
251
+ -------------------
252
+ - Build Windows distributions with VC7 or VC9 as appropriate.
253
+ - More verbose report on failure to speed up.
254
+ - Fix for prepared geometries broken in 1.2.11.
255
+ - DO NOT INSTALL 1.2.11
256
+
257
+ 1.2.11 (2011-08-04)
258
+ -------------------
259
+ - Ignore AttributeError during exit.
260
+ - PyPy 1.5 support.
261
+ - Prevent operation on prepared geometry crasher (#12).
262
+ - Optional Cython speedups for Windows.
263
+ - Linux 3 platform support.
264
+
265
+ 1.2.10 (2011-05-09)
266
+ -------------------
267
+ - Add optional Cython speedups.
268
+ - Add is_cww predicate to LinearRing.
269
+ - Add function that forces orientation of Polygons.
270
+ - Disable build of speedups on Windows pending packaging work.
271
+
272
+ 1.2.9 (2011-03-31)
273
+ ------------------
274
+ - Remove extra glob import.
275
+ - Move examples to shapely.examples.
276
+ - Add box() constructor for rectangular polygons.
277
+ - Fix extraneous imports.
278
+
279
+ 1.2.8 (2011-12-03)
280
+ ------------------
281
+ - New parallel_offset method (#6).
282
+ - Support for Python 2.4.
283
+
284
+ 1.2.7 (2010-11-05)
285
+ ------------------
286
+ - Support for Windows eggs.
287
+
288
+ 1.2.6 (2010-10-21)
289
+ ------------------
290
+ - The geoms property of an empty collection yields [] instead of a ValueError
291
+ (#3).
292
+ - The coords and geometry type sproperties have the same behavior as above.
293
+ - Ensure that z values carry through into products of operations (#4).
294
+
295
+ 1.2.5 (2010-09-19)
296
+ ------------------
297
+ - Stop distributing docs/_build.
298
+ - Include library fallbacks in test_dlls.py for linux platform.
299
+
300
+ 1.2.4 (2010-09-09)
301
+ ------------------
302
+ - Raise AttributeError when there's no backend support for a method.
303
+ - Raise OSError if libgeos_c.so (or variants) can't be found and loaded.
304
+ - Add geos_c DLL loading support for linux platforms where find_library doesn't
305
+ work.
306
+
307
+ 1.2.3 (2010-08-17)
308
+ ------------------
309
+ - Add mapping function.
310
+ - Fix problem with GEOSisValidReason symbol for GEOS < 3.1.
311
+
312
+ 1.2.2 (2010-07-23)
313
+ ------------------
314
+ - Add representative_point method.
315
+
316
+ 1.2.1 (2010-06-23)
317
+ ------------------
318
+ - Fixed bounds of singular polygons.
319
+ - Added shapely.validation.explain_validity function (#226).
320
+
321
+ 1.2 (2010-05-27)
322
+ ----------------
323
+ - Final release.
324
+
325
+ 1.2rc2 (2010-05-26)
326
+ -------------------
327
+ - Add examples and tests to MANIFEST.in.
328
+ - Release candidate 2.
329
+
330
+ 1.2rc1 (2010-05-25)
331
+ -------------------
332
+ - Release candidate.
333
+
334
+ 1.2b7 (2010-04-22)
335
+ ------------------
336
+ - Memory leak associated with new empty geometry state fixed.
337
+
338
+ 1.2b6 (2010-04-13)
339
+ ------------------
340
+ - Broken GeometryCollection fixed.
341
+
342
+ 1.2b5 (2010-04-09)
343
+ ------------------
344
+ - Objects can be constructed from others of the same type, thereby making
345
+ copies. Collections can be constructed from sequences of objects, also making
346
+ copies.
347
+ - Collections are now iterators over their component objects.
348
+ - New code for manual figures, using the descartes package.
349
+
350
+ 1.2b4 (2010-03-19)
351
+ ------------------
352
+ - Adds support for the "sunos5" platform.
353
+
354
+ 1.2b3 (2010-02-28)
355
+ ------------------
356
+ - Only provide simplification implementations for GEOS C API >= 1.5.
357
+
358
+ 1.2b2 (2010-02-19)
359
+ ------------------
360
+ - Fix cascaded_union bug introduced in 1.2b1 (#212).
361
+
362
+ 1.2b1 (2010-02-18)
363
+ ------------------
364
+ - Update the README. Remove cruft from setup.py. Add some version 1.2 metadata
365
+ regarding required Python version (>=2.5,<3) and external dependency
366
+ (libgeos_c >= 3.1).
367
+
368
+ 1.2a6 (2010-02-09)
369
+ ------------------
370
+ - Add accessor for separate arrays of X and Y values (#210).
371
+
372
+ TODO: fill gap here
373
+
374
+ 1.2a1 (2010-01-20)
375
+ ------------------
376
+ - Proper prototyping of WKB writer, and avoidance of errors on 64-bit systems
377
+ (#191).
378
+ - Prototype libgeos_c functions in a way that lets py2exe apps import shapely
379
+ (#189).
380
+
381
+ 1.2 Branched (2009-09-19)
382
+
383
+ 1.0.12 (2009-04-09)
384
+ -------------------
385
+ - Fix for references held by topology and predicate descriptors.
386
+
387
+ 1.0.11 (2008-11-20)
388
+ -------------------
389
+ - Work around bug in GEOS 2.2.3, GEOSCoordSeq_getOrdinate not exported properly
390
+ (#178).
391
+
392
+ 1.0.10 (2008-11-17)
393
+ -------------------
394
+ - Fixed compatibility with GEOS 2.2.3 that was broken in 1.0.8 release (#176).
395
+
396
+ 1.0.9 (2008-11-16)
397
+ ------------------
398
+ - Find and load MacPorts libgeos.
399
+
400
+ 1.0.8 (2008-11-01)
401
+ ------------------
402
+ - Fill out GEOS function result and argument types to prevent faults on a
403
+ 64-bit arch.
404
+
405
+ 1.0.7 (2008-08-22)
406
+ ------------------
407
+ - Polygon rings now have the same dimensions as parent (#168).
408
+ - Eliminated reference cycles in polygons (#169).
409
+
410
+ 1.0.6 (2008-07-10)
411
+ ------------------
412
+ - Fixed adaptation of multi polygon data.
413
+ - Raise exceptions earlier from binary predicates.
414
+ - Beginning distributing new windows DLLs (#166).
415
+
416
+ 1.0.5 (2008-05-20)
417
+ ------------------
418
+ - Added access to GEOS polygonizer function.
419
+ - Raise exception when insufficient coordinate tuples are passed to LinearRing
420
+ constructor (#164).
421
+
422
+ 1.0.4 (2008-05-01)
423
+ ------------------
424
+ - Disentangle Python and topological equality (#163).
425
+ - Add shape(), a factory that copies coordinates from a geo interface provider.
426
+ To be used instead of asShape() unless you really need to store coordinates
427
+ outside shapely for efficient use in other code.
428
+ - Cache GEOS geometries in adapters (#163).
429
+
430
+ 1.0.3 (2008-04-09)
431
+ ------------------
432
+ - Do not release GIL when calling GEOS functions (#158).
433
+ - Prevent faults when chaining multiple GEOS operators (#159).
434
+
435
+ 1.0.2 (2008-02-26)
436
+ ------------------
437
+ - Fix loss of dimensionality in polygon rings (#155).
438
+
439
+ 1.0.1 (2008-02-08)
440
+ ------------------
441
+ - Allow chaining expressions involving coordinate sequences and geometry parts
442
+ (#151).
443
+ - Protect against abnormal use of coordinate accessors (#152).
444
+ - Coordinate sequences now implement the numpy array protocol (#153).
445
+
446
+ 1.0 (2008-01-18)
447
+ ----------------
448
+ - Final release.
449
+
450
+ 1.0 RC2 (2008-01-16)
451
+ --------------------
452
+ - Added temporary solution for #149.
453
+
454
+ 1.0 RC1 (2008-01-14)
455
+ --------------------
456
+ - First release candidate
457
+
387
458
 
388
459
  Keywords: geometry topology gis
389
460
  Platform: UNKNOWN