Skip to main content
 首页 » 编程设计

python之修复 django 中的无效几何图形(没有数据库)

2025年01月19日2852php

我有从外部来源获取的多边形。多边形无效。

In [36]: p 
Out[36]: <Polygon object at 0x7fec6bea6ac0> 
 
In [37]: p.valid 
[12/Dec/2017 19:13:19] WARNING [django.contrib.gis:85] GEOS_NOTICE: Hole lies outside shell at or near point 260561.40600000042 776052 

我知道我可以使用 MakeValid() django 函数修复数据库中的多边形。

有没有办法在将多边形插入数据库之前修复它,只使用 geos API?

谢谢。

请您参考如下方法:

我不知道这是否一定会修复你的洞错误,但我很幸运通过执行 0 宽度缓冲区消除了自相交的几何图形:

p = p.buffer(0)