shapely.union

Contents

shapely.union#

union(a, b, grid_size=None, **kwargs)#

Merge geometries into one.

If grid_size is nonzero, input coordinates will be snapped to a precision grid of that size and resulting coordinates will be snapped to that same grid. If 0, this operation will use double precision coordinates. If None, the highest precision of the inputs will be used, which may be previously set using set_precision. Note: returned geometry does not have precision set unless specified previously by set_precision.

Parameters:
a, bGeometry or array_like

Geometry or geometries to merge (union).

grid_sizefloat, optional

Precision grid size; will use the highest precision of the inputs by default.

**kwargs

See NumPy ufunc docs for other keyword arguments.

Notes

Deprecated since version 2.1.0: A deprecation warning is shown if grid_size is specified as a positional argument. This will need to be specified as a keyword argument in a future release.

Examples

>>> import shapely
>>> from shapely import LineString
>>> line = LineString([(0, 0), (2, 2)])
>>> shapely.union(line, LineString([(2, 2), (3, 3)]))
<MULTILINESTRING ((0 0, 2 2), (2 2, 3 3))>
>>> shapely.union(line, None) is None
True
>>> box1 = shapely.box(0, 0, 2, 2)
>>> box2 = shapely.box(1, 1, 3, 3)
>>> shapely.union(box1, box2).normalize()
<POLYGON ((0 0, 0 2, 1 2, 1 3, 3 3, 3 1, 2 1, 2 0, 0 0))>
>>> box1 = shapely.box(0.1, 0.2, 2.1, 2.1)
>>> shapely.union(box1, box2, grid_size=1)
<POLYGON ((2 0, 0 0, 0 2, 1 2, 1 3, 3 3, 3 1, 2 1, 2 0))>