Python 向Shapely中的现有多边形添加新点
如何修改现有多边形?首先,我想在它的外部添加一个点Python 向Shapely中的现有多边形添加新点,python,shapely,Python,Shapely,如何修改现有多边形?首先,我想在它的外部添加一个点 poly=多边形([(0,0)、(1,1)、(1,0)]) 我在找这样的东西: poly.append_位于(idx=3,点(1,-1)) 但是我找不到任何类似的方法来做这件事。从多边形的外部添加或删除点是没有意义的,因为您无论如何都要重新计算多边形面积,多边形长度,等等。而是从旧多边形的坐标创建一个新的多边形实例: coords = poly.exterior.coords[:] coords[1] = (2.0, 6.0) # coordi
poly=多边形([(0,0)、(1,1)、(1,0)])
我在找这样的东西:
poly.append_位于(idx=3,点(1,-1))
但是我找不到任何类似的方法来做这件事。从
多边形的外部添加或删除点是没有意义的,因为您无论如何都要重新计算多边形面积
,多边形长度
,等等。而是从旧多边形的坐标创建一个新的多边形
实例:
coords = poly.exterior.coords[:]
coords[1] = (2.0, 6.0) # coordinate to change
new_poly = Polygon(coords)
请注意,这并不能解释poly.interior
@MikeToews:Re您下面的评论(现在可能被删除)-我理解为“不可变”,但文档中的下一句话说“它们的父特征是可变的,因为它们可以被分配新的坐标序列。”。这就是我想做的,分配一个新的序列。据我所知,一个新坐标序列的赋值可能会触发面积、质心等的重新计算。所以我认为文档在这一点上有点误导。@Subrivean同意,手册中的这个模糊不清楚;看见