我在使用距离法时遇到了问题(我怀疑与geos包不兼容)。
以下代码:
from shapely.geometry import Point
print Point(0,0).distance(Point(1,1))
会产生以下错误:
python: GeometryComponentFilter.cpp:34: virtual void geos::geom::GeometryComponentFilter::filter_ro(const geos::geom::Geometry*): Assertion `0' failed.
Aborted (core dumped)
我正在运行CentOS 6,python 2.6,geos 3.4.2(虽然它创建了一个从libgeos_c到1.8.2的链接)
谷歌搜索它产生了一些对我没有帮助的旧帖子。
谢谢, 拉兹
答案 0 :(得分:1)
这看起来像一个GEOS错误(#535)。作为解决方法,请尝试获取开发快照that appears to solve this issue:
svn co http://svn.osgeo.org/geos/trunk@3960 geos-svn
cd geos-svn
./autogen.sh
./configure
make
make check
如果最后一个命令抛出任何类似错误,请考虑向错误报告提供反馈。但如果一切都很好,那么它应该是好的。以root身份:
make install
ldconfig