python - 在 Shapely 中向现有多边形添加新点

标签 python shapely

如何修改现有的多边形?首先,我想在它的外部添加一个点。

poly = Polygon([(0, 0), (1, 1), (1, 0)])

我一直在寻找这样的东西:

poly.append_at(idx=3, Point(1, -1))

但我找不到任何类似的方法来做到这一点。

最佳答案

Polygon 的外部添加或删除点没有意义,因为您需要重新计算 poly.areapoly .length 等等。相反,从旧多边形的坐标创建一个新的 Polygon 实例:

coords = poly.exterior.coords[:]
coords[1] = (2.0, 6.0) # coordinate to change

new_poly = Polygon(coords)

请注意,这不考虑 poly.interior 中的点数。

关于python - 在 Shapely 中向现有多边形添加新点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14084290/

相关文章:

python - 使用 lambda 进行 numpy 元素转换?

python - 删除 Pandas Dataframe 中的非等效多索引行

python - 列表内列表的局部最大值

python - 正确安装 shapely 到系统解释器中以避免段错误

python - 如何在 Shapely 中检查多边形是否为空?

python - 使用 Python 绘制安全性与交易时间的关系图

python - 在 Kivy 的 BoxLayout 中居中 TextInput

svg - 如何将形状优美的多边形转换为 SVG?

python - 如何使用 Pyspark 和 shapely 使用纬度和经度信息找到国家/地区

python - 多边形与线的交点 | python 身材匀称