要素内部几何空间查询
featureclass里几何字段(shape)存储有很多的几何,假如我们要的是某一个几何部分作空间查询,现有的工具只有图层查询图层的,没有几何查询图层的。ArcPy为我们提供searchcursor的函数,通过SQL条件语句查找出某部分的几何,再把这个几何用于空间查询是可行的,空间查询用SelectLayerByLocation函数。
以下是用矢量格网中的字段ID为1的部分查询落在该几何范围内点的演示代码:
import arcpy
arcpy.env.workspace=r'c:/……/file.gdb'
#查找要素ID=1的几何,SHAPE@表示几何对象,ID='1'是SQL的条件语句
search=arcpy.da.SearchCursor('sample',"SHAPE@","ID='1'")
#作空间查询
for i in search:
... arcpy.SelectLayerByLocation_management("point","INTERSECT",i)
非常短的几句代码就完成了……
转载自:https://blog.csdn.net/qq_14906811/article/details/76777693