Hi, Could someone give me some light into this: I'm getting very different behavior between versions/platforms for cascaded_union and unary_union. I would like to know what it the expected/latest/correct behavior. These are the two cases:
CASE 1 ====== Os: Ubuntu 12.04 libgeos-c1: 3.2.2-3ubuntu1 shapely: 1.5.1 python: 2.7.3 >>> cascaded_union([]) --------------------------------------------------------------------------- ValueError Traceback (most recent call last) /home/jpcaram/flatcam/<ipython-input-4-0c768f786c71> in <module>() ----> 1 cascaded_union([]) /usr/local/lib/python2.7/dist-packages/shapely/ops.pyc in cascaded_union(self, geoms) 128 subs[i] = g._geom 129 collection = lgeos.GEOSGeom_createCollection(6, subs, L) --> 130 return geom_factory(lgeos.methods['cascaded_union'](collection)) 131 132 def unary_union(self, geoms): /usr/local/lib/python2.7/dist-packages/shapely/geometry/base.pyc in geom_factory(g, parent) 53 # Abstract geometry factory for use with topological methods below 54 if not g: ---> 55 raise ValueError("No Shapely geometry can be created from null value") 56 ob = BaseGeometry() 57 geom_type = geometry_type_name(g) ValueError: No Shapely geometry can be created from null value >>> unary_union([]) --------------------------------------------------------------------------- KeyError Traceback (most recent call last) /home/jpcaram/flatcam/<ipython-input-6-9089513baa4e> in <module>() ----> 1 unary_union([]) /usr/local/lib/python2.7/dist-packages/shapely/ops.pyc in unary_union(self, geoms) 146 subs[i] = g._geom 147 collection = lgeos.GEOSGeom_createCollection(6, subs, L) --> 148 return geom_factory(lgeos.methods['unary_union'](collection)) 149 150 operator = CollectionOperator() KeyError: 'unary_union' >>> cascaded_union([Point(0,0)]) <shapely.geometry.point.Point at 0x201d510> >>> unary_union([Point(0,0)]) --------------------------------------------------------------------------- KeyError Traceback (most recent call last) /home/jpcaram/flatcam/<ipython-input-9-858a4018548e> in <module>() ----> 1 unary_union([Point(0,0)]) /usr/local/lib/python2.7/dist-packages/shapely/ops.pyc in unary_union(self, geoms) 146 subs[i] = g._geom 147 collection = lgeos.GEOSGeom_createCollection(6, subs, L) --> 148 return geom_factory(lgeos.methods['unary_union'](collection)) 149 150 operator = CollectionOperator() KeyError: 'unary_union' CASE 2: ======= Os: Windows 7 python: 2.7.6 shapely: 1.3.0 (Installer came with geos) >>> cascaded_union([]) <shapely.geometry.collection.GeometryCollection at 0x7708830> >>> unary_union([]) <shapely.geometry.collection.GeometryCollection at 0x7708ab0> In CASE 1, everything is newer except for the python version. Has the behavior of shapely/geos changed? Thank You, JP
_______________________________________________ Community mailing list Community@lists.gispython.org http://lists.gispython.org/mailman/listinfo/community