如何在Python中合并多个缓冲区对象?
假设我有几个 python.shapely.LineString 对象。我在它们周围建立了缓冲区,得到了几条缓冲线。现在我想把这些缓冲形状合并成一个(也就是把所有这些形状加在一起),但我不能把它们当作多边形对象来处理,因为它们只是缓冲线。有没有什么建议可以做到这一点?
1 个回答
4
unary_union 可以用来“合并”一系列的几何形状。例如:
from shapely.geometry import LineString
from shapely.ops import unary_union
lines = [
LineString([(845, 555), (365, -5), (130, -650)]),
LineString([(740, 605), (640, 60), (315, -375)]),
LineString([(0, -500), (655, -150), (900, 300)]),
]
# Two example unions
unioned_lines = unary_union(lines)
unioned_buffered_poly = unary_union([l.buffer(50) for l in lines])