许可优化
许可优化
产品
产品
解决方案
解决方案
服务支持
服务支持
关于
关于
软件库
当前位置:服务支持 >  软件文章 >  GIS空间查询(SpatialFilter)时各种空间关系总结

GIS空间查询(SpatialFilter)时各种空间关系总结

阅读数 17
点赞 0
article_banner

    在使用ISpatialFilter接口进行空间关系查询时,使用esriSpatialRelEnum枚举 类  型来判断空间关系。

1、esriSpatialRelContains(包含)和esriSpatialRelWithin(包含于)

应用范围:

          所有要素类之间均具有该关系

   描述:可细分为一个要素完全包含另一个要素和一个要素被另一个要素完全包含。它们是相对的关系,若果说要素A完全位于要素B内,则要素B完全包含要素A。当两个图形完全相等时,即相互包含。

示意图:

2、esriSpatialRelTouches (边界相接)

应用范围:

        除点与点之间的关系外,其它的要素之间都可以具有该关系。

   描述:

    两个几何图形只在它们的交界处相交,而两个几何图形内部的交集为空。如点和线的相接,那么点必须在线的端点处才会发生相接关系。

示意图:

3、esriSpatialRelCrosses (穿越)

应用范围:

        线与面,线与线。

描述:

   如果二个要素的相交部分不为空,并且相交部分形状的维数比两个要素中最高维数低1(即线面交叉是线,线线交叉是点)则称这二个要素具有交叉关系。

示意图:

4、esriSpatialRelOverlaps (空间覆盖)

应用范围:


       线与线,面与面,多点与多点。

描述:

   两个几何图形的交集与这两个几何图形的维数相同,但其交集结果与这两个几何图形不同。

示意图:

5、esriSpatialRelIntersects (广义相交)

应用范围:

         所有要素类之间均具有该关系。

   描述:

   相交关系是一个广义的关系,包括上述4种关系。

6、esriSpatialRelEnvelopeIntersects(包络线相交)

应用范围:

        所有要素类之间均具有该关系。

   描述:

   查询几何和目标几何的Envelope(包络线--最小外接矩形)相交(本身不一定相交)

7、esriSpatialRelIndexIntersects ( 索引相交)

描述:

查询几何图形的空间范围和目标几何图形的索引范围相交。API解释:Returns a feature if the envelope of the query geometry intersects the index entry for the target geometry.  Because it uses the underlying index grid, rather than the evelope of the feature, it is faster and is commonly used for return features for display purposes.

8、esriSpatialRelUndefined  (未定义)

描述:

   相当于不考虑空间关系。

9、esriSpatialRelRelation  (空间关联)

描述:Query geometry IBE (Interior-Boundary-Exterior) relationship with target geometry。通过SpatialRelDescription属性设置自定义空间关系。俗称九关系查询。

     ISpatialFilter.SpatialRel设置为esriSpatialRelRelate,并且设置SpatialRelDescription为某个字符串。字符串中有9个字符,每个字符可以是F,T,或者*,T表示True,F表示False,*表示无关。用于指定 数组  中每个元素的交集是真(T)、假(F)还是不检查(*)。这九个关系取交集,最终的结果为满足条件的结果集。

Interior:不包含 边界 的内部。
Boundary:线的边界包由所有线的端点构成。面的边界由线性边界构成。
Exterior:外部

      这9个关系是分别从几何体的内部,边界,外部来区分的,所有的几何体之间的拓扑关系不外乎这9个关系的组合。Query Geometry:用于查询的几何对象


Query GeometryTarget Geometry
1interiorinterior
2interiorboundary
3interiorexterior
4boundaryinterior
5boundaryboundary
6boundaryexterior
7exteriorinterior
8exteriorboundary
9exteriorexterior

1)面与面共边且相交(T***T****)

   2)包含(TT*FFT***)

例如:不相交关系

ISpatialFilter spatialFilter = new SpatialFilterClass(){   Geometry = geometry,   GeometryField = originFClass.ShapeFieldName,   SpatialRel = esriSpatialRelEnum.esriSpatialRelRelation};spatialFilter.SpatialRelDescription = "FF*FF****"; //"F*T***T**";

但是在实际运用中却出现了问题,忘大神们看到能给点提示

如上图(线面相交):利用九关系的不相交居然能查询到与线相交的面。


免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删


相关文章
技术文档
QR Code
微信扫一扫,欢迎咨询~
customer

online

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 board-phone 155-2731-8020
close1
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

姓名不为空

姓名不为空
手机不正确

手机不正确

手机不正确
公司不为空

公司不为空

公司不为空