空间过滤器(Spatial filters)
使用Spatial Filters来实现根据空间位置的筛选。
先设置两个shp文件,其中的要素需要相交。

import os
from osgeo import ogr, gdal
gdal.SetConfigOption("GDAL_FILENAME_IS_UTF8", "YES")
gdal.SetConfigOption("SHAPE_ENCODING", "UTF8")
driver = ogr.GetDriverByName('ESRI SHAPEFILE')
# 定义两个shp的路径
country_shp_path = 'shp/province_1.shp'
polygon_shp_path = 'shp/province_line.shp'
# 定义两个shp数据集
country_shp = driver.Open(country_shp_path)
polygon_shp = driver.Open(polygon_shp_path)
# 定义两个shp的layer
country_layer = country_shp.GetLayer(0)
polygon_layer =

这篇博客介绍了如何利用Python的OGR库进行空间过滤,通过设置SpatialFilter筛选两个Shapefile中相交的要素,并创建新的Shapefile。此外,还展示了如何使用SetSpatialFilterRect创建矩形筛选区域。同时,文章提到了使用SQL语句进行复杂查询以及SetAttributeFilter进行属性筛选的方法,以选择特定属性的图层要素。
最低0.47元/天 解锁文章
1162

被折叠的 条评论
为什么被折叠?



