Gis 对重叠多边形进行布尔运算的好方法

Gis 对重叠多边形进行布尔运算的好方法,gis,shapefile,Gis,Shapefile,在矢量几何体(多边形和多段线)上执行布尔运算(并集、相交、相减)的最佳开源库是什么,例如存储在shapefile中的类型?你喜欢用什么 OGR看起来可能有这个功能,尽管我在文档中找不到特定的命令。 Shapely确实做到了这一点,而且很容易理解。 PostGIS似乎也有一些用于此的命令 但肯定还有更多,我很难找到它们 我对上述任何一个图书馆都没有太多经验,如果您对这些图书馆或其他图书馆有任何意见,我将不胜感激 谢谢 我认为OGR不能帮助您做到这一点,尽管如果您的数据位于通过SQL支持这些操作的空

在矢量几何体(多边形和多段线)上执行布尔运算(并集、相交、相减)的最佳开源库是什么,例如存储在shapefile中的类型?你喜欢用什么

OGR看起来可能有这个功能,尽管我在文档中找不到特定的命令。 Shapely确实做到了这一点,而且很容易理解。 PostGIS似乎也有一些用于此的命令

但肯定还有更多,我很难找到它们

我对上述任何一个图书馆都没有太多经验,如果您对这些图书馆或其他图书馆有任何意见,我将不胜感激


谢谢

我认为OGR不能帮助您做到这一点,尽管如果您的数据位于通过SQL支持这些操作的空间数据库中,OGR可以做到这一点——您可以传入geomety操作查询,OGR将以通常的方式从DB接收结果


查看GEOS库,我很确定它可以做到这一点,但我没有使用过它,因此我无法进一步回答

只是一点更正:Shapely不操作ShapeFile,它操作单个或多部分几何对象。与shapefile读写器结合使用,它可以用于执行二进制文件操作的程序中(例如,我有一个服务可以在空间上比较GeoRSS Feed),但与您一样,我在ArcMap等专有软件之外没有见过这种类型的东西。

谢谢,请注意并进行更正。谢谢你的谢意!关于shapefile阅读器/写入器与shapely一起使用有何建议?我开始制作shapefile阅读器(github.com/bengold/pyshapefile),但还没有使它变得非常友好,可能有人已经制作了一个更好的。GEOSS服务真是太棒了。PostGis(PostgreSql数据库的空间扩展)、GDAL/OGR(矢量和光栅格式的读写)、GEOS(Shapely只是GEOS iirc的包装器,以前有python OGR/GDAL包装器)都是非常好的地理空间工作开源库(我可以完全推荐所有这些)。顺便说一句:PostgreSQL还使用GEOS、GDAL和Proj4等。在地理空间开放源码中,您会看到许多地方使用了许多库(例如Mapserver、Geoserver等)。另外:问此类问题的好地方是gis.stackexchange.com