我试图用两行将一个shapely.geometry.Polygon实例分为两部分。例如,在下面的代码中,polygon是一个环,如果我们用line1line2切割它,我们应该得到两个部分环,一个w/270度,一个90度。会有一个干净的方法来做这件事吗?

from shapely.geometry import Point, LineString, Polygon

polygon = Point(0, 0).buffer(2).difference(Point(0, 0).buffer(1))
line1 = LineString([(0, 0), (3, 3)])
line2 = LineString([(0, 0), (3, -3)])

最佳答案

从1.6.0版(2017年8月)起,有一个函数可以将一个几何图形按形状分割,因此不再需要滚动自己的几何图形。查看文档:shapely.ops.split(geom, splitter)
请注意,此线程上接受的答案是在拆分函数未成形之前编写的—现在它已被有效地废弃了。

关于python - 在Shapely中用两条线切割多边形,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39338550/

10-16 02:39