zoukankan      html  css  js  c++  java
  • ArcEngine 通过SpatialRelDescription删除不相交要素

    ISpatialFilter.SpatialRel设置为esriSpatialRelRelate,并且设置SpatialRelDescription为某个字符串。该字符串的构造方法:
    该字符串为长度为9, “*********”;每一个“*“可以换为”T“或”F“,T表示True,F表示False。具体怎样构造根据具体需要来定。这样就相当于自定义了一个空间关系。每一个字符从左到右分别对应一下的关系
    1 interior interior 
    2 interior boundary 
    3 interior exterior 
    4 boundary interior 
    5 boundary boundary 
    6 boundary exterior 
    7 exterior interior 
    8 exterior boundary 
    9 exterior exterior 

    这9个关系是分别从几何体的内部,边界,外部来区分的,所有的几何体之间的拓扑关系不外乎这9个关系的组合。

    删除不相交要素的关系是:FF*FF****  ( F*T***T**)

    ISpatialFilter spatialFilter = new SpatialFilterClass();
    spatialFilter.Geometry = baseGeom;
    spatialFilter.SpatialRel = esriSpatialRelEnum.esriSpatialRelRelation;
    spatialFilter.SpatialRelDescription = "FF*FF****"; //"F*T***T**";
    (fc as ITable).DeleteSearchedRows(spatialFilter);

      

  • 相关阅读:
    Qt共享内存实现进程间通信(QSharedMemory)
    Qt5.5制作简单的屏幕截图程序
    006--C++动态内存(简介)
    005--C++字符
    004--C++11的初始化方式
    003--sizeof的使用
    002--C++程序的创建
    001--基础知识准备
    Qt5.5连接MySQL
    vue-cli中如何创建并引入自定义组件
  • 原文地址:https://www.cnblogs.com/janehlp/p/4154958.html
Copyright © 2011-2022 走看看