ArcEngine的拓扑分析之ITopologicalOperator
先来看看ITopologicalOperator的成员:截图来自帮助文档:
简要介绍下各个成员的汉语翻译:
1、Boundary,边界,获取一个Geometry的边界;
用法:
ITopologicalOperator pTopologBoundary = pGeo as ITopologicalOperator;IGeometry pGeometry = pTopologBoundary.Boundary;
(1)多边形Polygon的边界获取的是Polyline
(2)Polyline获得的是IPiontColletion点集;(3)点没有边界
2、Buffer,缓冲区,可以为点、线、面做缓冲区,参数为缓冲区范围的大小,大于0向外做缓冲区,小于0向内做缓冲区;
用法:
ITopologicalOperator pTopologBoundary = pGeo as ITopologicalOperator;
IGeometry pGeometry = pTopologBoundary.Buffer(2);
3、Clip,叠加裁剪,从源图层中裁剪掉分割图层后的图形;参数类型为IEnvelope类型
用法:
ITopologicalOperator pTopologBoundary = pSourceGeometry as ITopologicalOperator;
pTopologBoundary.Clip(pClipGeometry.Envelope as IEnvelope);
4、Cut,分割,将一个Geometry分割为两部分。
用法:
IGeometry pSourceGeometry = null, pClipGeometry = null;
IGeometry pLeftGeo,pRightGo;
IPolyline pPolyline=null;
ITopologicalOperator pTopologBoundary = pSourceGeometry as ITopologicalOperator;
pTopologBoundary.Cut(pPolyline, out pLeftGeo, out pRightGo);
5、Difference,区别,保留下源图层与操作图层中不同的部分。
用法:
IGeometry pSourceGeometry = null, pDifGeometry = null;
ITopologicalOperator pTopologBoundary = pSourceGeometry as ITopologicalOperator;
IGeometry pResultGeo= pTopologBoundary.Difference(pDifGeometry);
6、Intersect,相交,求两个图层相交,返回IGeometry对象
用法:
ITopologicalOperator pTopological = (pSubFeature.Shape) as ITopologicalOperator;
IGeometry pGeoIntersect=pTopological.Intersect(pFeature.Shape, esriGeometryDimension.esriGeometry2Dimension);
7、IsSimple,是否拓扑闭合
用法:
ITopologicalOperator pTopologBoundary = pSourceGeometry as ITopologicalOperator;
bool bIsSimple = pTopologBoundary.IsSimple;
8、Simplify,使一个Geometry拓扑闭合;
用法:
ITopologicalOperator pTopologBoundary = pSourceGeometry as ITopologicalOperator;
pTopologBoundary.Simplify();
9、Union,使Geometry组合起来
用法:
<pre name="code" class="csharp">IGeometry pSourceGeometry = null, pUnionGeometry = null;
ITopologicalOperator pTopologBoundary = pSourceGeometry as ITopologicalOperator;
IGeometry pUnionGeo=pTopologBoundary.Union(pUnionGeometry);
转载于:https://www.cnblogs.com/dengshiwei/p/4258716.html
ArcEngine的拓扑分析之ITopologicalOperator相关推荐
- arcgis伪节点检查_arcgis建立拓扑分析(检验矢量图)
目的:矢量图画好后,检查是否有伪节点,悬挂节点等,线要素和面要素都可以检查.伪节点,两条线应该相交但是画的没相交:悬挂节点,两条线看似相交了但是没有节点,因此路径不同(类似于高架桥和交叉口,悬挂节点就 ...
- arcgis建立拓扑分析(检验矢量图)
目的:矢量图画好后,检查是否有伪节点,悬挂节点等,线要素和面要素都可以检查.伪节点,两条线应该相交但是画的没相交:悬挂节点,两条线看似相交了但是没有节点,因此路径不同(类似于高架桥和交叉口,悬挂节点就 ...
- ArcGIS Engine空间分析之拓扑分析的实现
简单介绍: 拓扑学是一门研究几何图形位置关系的科学. GIS所关注的拓扑主要集中在拓扑关系--存在于地理实体间的拓扑关系. 拓扑关系在GIS中起着描述两个地理实体的相对空间位置的重要作用.它是GIS空 ...
- NVIDIA NCCL 源码学习(三)- 机器内拓扑分析
上节介绍到所有节点执行了bootstrap网络连接的建立,接下来介绍下拓扑分析. 由于gpu机器架构是多种多样的,一台机器上可能有多个网卡,多个gpu卡,卡间连接也各不相同,因此需要对机器内设备连接拓 ...
- postgis routing pgr_dijkstra道路拓扑分析与方向分析
postgis 拓扑网路实现沿路测距 通过shp导入postgis后的拓扑路网,实现沿路测距,通过wfs请求完成前端的服务实现 [1].增加数据字段 -- Function: public.pgr_f ...
- dcdc电源 拓扑 分析
DCDC共分三种,降压电路,升压电路,升降压电路,常用的是前两种. buck 原理分析: 1.开关管导通时,环路由Vi,S,L,C构成. 此时负载由Vi供电,Vi同时还对电感L进行充电: 2.开关管断 ...
- FME数据处理04:面自相交拓扑检查
在ArcGIS中仅提供了线要素的自相交拓扑检查,并未找到关于面要素自相交的相关表述:本文结合FME2019.列举了几种面自相交的情形,并介绍了FME中三个转换器及其设置方法. 关于ArcEngine的 ...
- ARCGIS常见拓扑错误的修改方法
一.先看看在ArcInfo里面的拓扑的实现: 其中在ArcGIS 8以后,Geodatabase成为一种全新的空间数据模型.它采用一种开放的结构将空间数据(包括:矢量.栅格.影像.三维地形等)及其相关 ...
- C#进行Visio二次开发之电气线路停电分析逻辑
停电分析,顾名思义,是对图纸进行停电的逻辑分析.在电气化线路中,一条线路是从一个电源出来,连接着很多很多的设备的,进行停电分析,有两个重要的作用:一是看图纸上的Shape元件是否连接正常,二是看哪些设 ...
最新文章
- Blender建筑可视化技能学习视频教程
- C#压缩解压zip 文件
- thinkphp几个表的数据合并,并用数组分页
- ssh-add Could not open a connection to your authentication agent.
- Xamarin.Forms读取并展示Android和iOS通讯录 - TerminalMACS客户端
- 【机器学习】 - 激活函数与交叉熵Sigmoid, Softmax, binary_crossentropy, categorican_crossentropy区别
- (41)FPGA面试题FPGA详细设计流程
- 昨天晚上00:00睡觉,本来刘开着空调,我也没有找到来关掉
- WindowsApi 解压缩文件
- 浙大计算机基础知识试题及答案,14年浙大远程教育计算机基础4.电子表格Excel 2010知识题(高起专)作业题4答案...
- ESX无法感知VM的心跳
- 自制电吉他效果器 DIY PCB(三)原理图与封装 上
- js实现图片在一个div中点击按钮放大缩小效果
- 无法在驱动器1分区上安装W ndOwS,安装win10提示无法在驱动器0分区上安装windows
- 使用C#或C++语言实现微信自动加好友的功能(附接口SDK及源码)
- FCPX插件:镜头光晕眩光特效插件PHYX Flarelight
- CCNA之EIGRP(IGRP)
- 【金融项目】尚融宝项目(十五)
- woj 1537 Stones I
- 哨兵2号Sentinel-2已经完成大气校正的L2A级遥感影像产品的下载方法