空间查询过滤器:查询对象 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几何要素空间关系查询