我尝试在多边形接触的条件下创建多边形区域。在我的示例中,我有一个包含382个多边形的示例数据集,这些多边形需要组合在一起(但完整的数据集包含6355个多边形)。(我会展示一张照片,但我没有足够的声誉来做这件事…)
我虽然想用这种蛮力,但那当然需要很长时间,也不是很理想。在def groupBuildings(blds):
# blds is a list with shapely polygons
groups = []
for bld in blds:
group = []
group.append(bld)
for other in blds:
for any in group:
if any != other and any.intersects(other):
group.append(other)
groups.append(group)
return groups
我了解到了区域增长,并认为这是一个可能的解决方案,但仍然表现糟糕。我通过以下方式实现了这一点:
^{pr2}$
但我认为问题是我没有任何最近的邻居,所以我仍然需要迭代每栋楼两次。在
所以我的问题是:最近的邻国对该地区的发展至关重要吗?或者有其他有效的方法吗?在