我正在使用 geodjango 和 postgis (1.x),组合(联合)多面体列表的最佳方法是什么。
在我认为效率很低的情况下,我正在像这样循环低谷
combined = multipolygon
for item in items:
combined = combined.union(item.geom) #geom is a multipolygon
通常这工作正常,但我经常收到错误错误检查从 GEOS C 函数“GEOSUnion_r”返回的几何时遇到的错误。
如果有帮助,这是抛出错误的项目的 geo json 版本
{ "type": "MultiPolygon", "coordinates":
[ [ [ [ -80.077576, 26.572225 ],
[ -80.037729, 26.571180 ],
[ -80.080279, 26.273744 ],
[ -80.147464, 26.310066 ],
[ -80.152851, 26.455851 ],
[ -80.138560, 26.538013 ],
[ -80.077576, 26.572225 ]
] ] ]
}
有人有什么想法吗?最终目标是找到属于这个 n 多边形列表的所有位置(另一个表)(使用坐标__within=combined_area)
此外,多边形在 geodjango 管理员的地图上显示得很好。