如何使用 Shapely 减去两个多边形

sim*_*guy 2 python set-difference shapely

我不太确定如何解释这一点,但我有 2 个多边形,Polygon1 和 Polygon2。这些多边形相互重叠。如何在没有来自 Polygon1的P 的情况下使用 Shapely 获取Polygon2。

Geo*_*rgy 9

您正在寻找不同之处。在 Shapely 中,您可以通过使用一种difference方法或简单地从另一个多边形中减去*一个多边形来计算它:

from shapely.geometry import Polygon

polygon1 = Polygon([(0.5, -0.866025), (1, 0), (0.5, 0.866025), (-0.5, 0.866025), (-1, 0), (-0.5, -0.866025)])
polygon2 = Polygon([(1, -0.866025), (1.866025, 0), (1, 0.866025), (0.133975, 0)])
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

difference = polygon2.difference(polygon1)  # or difference = polygon2 - polygon1
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

有关更多集合论方法,请参阅文档


*此功能没有记录。请参阅 GitHub 上的问题:类似文档集的属性