ARCGIS PRO SDK VB2022 使用SpatialQueryFilter查询

​空间查询过滤器:查询对象 FeatureClass

     Dim Path As String                                '空间查询:地理数据库
     Dim YSNAME As String                              '空间查询:地理数据库要素类名称
     Dim pPolygon As ArcGIS.Core.Geometry.Polygon      '定义查询范围
     Await QueuedTask.Run(Sub()
                              Dim geodatabase As Geodatabase = New Geodatabase(New DatabaseConnectionFile(New Uri(Path)))
                              Dim schoolBoundaryFeatureClass As FeatureClass = geodatabase.OpenDataset(Of FeatureClass)(YSNAME)
                              Dim SpatialQueryFilter As SpatialQueryFilter = New SpatialQueryFilter
                              With SpatialQueryFilter
                                  .WhereClause = "DISTRCTNAME = 'Indian Prairie School District 204'"
                                  .FilterGeometry = pPolygon
                                  .SpatialRelationship = SpatialRelationship.Within    '定义空间关系内(包含于)
                              End With
                              Dim indianPrairieCursor As RowCursor = schoolBoundaryFeatureClass.Search(SpatialQueryFilter, False)
                              While indianPrairieCursor.MoveNext()
                                  Dim pfeature As Feature = indianPrairieCursor.Current
                                  Console.WriteLine(pfeature.GetObjectID())
                              End While
                          End Sub)

支持一下几何空间关系:

成员 描述
Contains 过滤器几何中完全包含目标要素类中的要素。
Crosses 过滤器几何与目标要素类中的要素相交。
EnvelopeIntersects 过滤器几何的包络与目标要素类中要素的包络相交。
IndexIntersects 过滤器几何的包络与目标要素类中要素的索引条目相交。
Intersects 过滤器几何与目标要素类中的要素相交。
Overlaps 过滤器几何与目标要素类中的要素重叠。
Relation 过滤器几何与目标要素类中的要素存在内部-边界-外部关系。
Touches 过滤器几何与目标要素类中的要素接触。
Undefined 没有明确的空间关系。
Within 过滤器几何位于目标要素类的要素内。

何空间关系图解见ARCGIS PRO SDK VB2022几何要素空间关系查询

你可能感兴趣的:(arcgis,oracle,数据库)