Python中的3D几何拓扑(例如交集)
作者:互联网
我正在使用GEOS(in Python/Django)来操纵一些3d元素.所有拓扑操作都在2D中完美运行.因此,我创建了一个带有3D多边形的简单MultiPolygon(实际上非常简单,它只是一个垂直平面的集合),还有一个也是3D的LineString.现在我只想要那些(我相信这将是一个3D点列表)的交集:
>>> l = LineString([0, 0, 0], [1, 1, 1])
>>> p = Polygon([[1, 0, 0], [0, 1, 0], [0, 1, 1000], [1, 0, 1000], [1, 0, 0]])
>>> p.intersects(l)
False
好吧,geos不支持使用3D数据进行拓扑操作……好吧,那里肯定有很多库可以帮我做到这一点???所以我用Google搜索,我找不到一个!!!所以如果有人有指针,那就太棒了……
编辑
有与Intersections of 3D polygons in python类似的问题,但这并没有给出任何令人满意的答案(见评论).
解决方法:
我仍然不相信在python中有一个库的单一“好选择”,但是许多有前景的项目正在开发中,其中最重要的是在谷歌代码上改进了cgal-bindings.
从版本4开始,CGAL的新许可条件(GPL / LGPL)也使该主题的原始question的某些部分过时.
标签:python,geometry,geos 来源: https://codeday.me/bug/20190704/1377272.html