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

Reply via email to