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);
				
时间: 2024-12-25 09:38:46

ArcEngine的拓扑分析之ITopologicalOperator的相关文章

arcgis建立拓扑分析(检验矢量图)

目的:矢量图画好后,检查是否有伪节点,悬挂节点等,线要素和面要素都可以检查.伪节点,两条线应该相交但是画的没相交:悬挂节点,两条线看似相交了但是没有节点,因此路径不同(类似于高架桥和交叉口,悬挂节点就类似高架桥) 基本步骤: 1.建立拓扑 2.验证拓扑 拓扑的建立可在arcCatalog里完成,也可以在arcMap里右侧目录下完成(本人常称小catalog).catalog是管理文件的一个软件. 注意!!建立拓扑之前需要将要素导入到数据库里的数据集中. 下面简述这个问题.通常来说在arcgis里

ArcEngine编写WebService

开发环境:Windows7旗舰版64bit.VisualStudio2008 With SP1.ArcEngine10.0.NetFrameWork4.0.IIS7和C#开发语言. 背景:ArcEngine开发的分析功能同时在dotNet(CS)和Java(BS)中使用,在CS程序中运行正常,但是在BS运行下经常无法获得分析数据,因此想通过写一个WebService的方式进行解决. 因为之前一直做成CS的东西,很少接触BS内容,完全从0写起,因此写起来遇到了不少问题.比较费事. 下面记录下我写的

数据包分析3

数据包分析3 一.实验目的 SW1的G0/1 G0/2 接口都为hybrid 端口,G0/1属于VLAN 2 ,G0/2属于VLAN 3,两边PC想要互通,需要添加什么配置 二.实验拓扑 分析 PC1发送一个数据包,目的地址是PC2,SW1的G0/1接口为hybrid端口,将PC1的数据包打上VLAN 2的标签,接收,G0/2属于VLAN 3,所有PC1与PC2不能互通,现在,在SW1的G0/1接口添加一条配置,允许VLAN 3不带标签通过,G0/2接口添加一条允许VLAN 2的数据包不带标签通

Qgs开发16-拓扑分析

Qgs开发-拓扑分析 [email protected] 2014年10月22日 1  概述 拓扑分析一般是指地理元素之间的相关关系.一般是以基本的空间关系为基础,进行综合运算,计算元素之间的复杂关系,如空洞检查.重叠检查等. 参考:http://en.wikipedia.org/wiki/Geospatial_topology http://en.wikipedia.org/wiki/DE-9IM http://help.arcgis.com/zh-cn/arcgisdesktop/10.0/

基于ArcEngine开发自己的GIS

对于AE开发实在提不起兴趣,想好好去搞js的开发,无奈这门课要考试,还要做一个设计.所以我决定在设计周来到之前,就把这个开发做出来.然后就可以花样装逼啦.主要是通过写博客能督促自己搞一下,可以尽快完成. 需求分析 1.具备基本的地图操作功能.具备左右窗口间的鹰眼查看. 2.具备基本的查询和统计功能.包括属性.空间和图形的查询.具备一定的分析功能. 3.有一点地图制图的功能.包括符号化和地图标注. 4.具备一定的空间数据编辑功能.包括设置编辑的图层,属性编辑,节点编辑,保存和结束编辑. 5.具有空

开源GIS简介

原文 开源GIS C++开源GIS中间件类库: GDAL(栅格)/OGR(矢量)提供了类型丰富的读写支持 GEOS(Geometry Engine Open Source)是基于C++的空间拓扑分析实现类库,遵循LGPL协议发布.GEOS类库提供了丰富的空间拓扑操作函数,用以判断几何对象间的相互关系,以及空间分析操作之后形成新的几何对象.点.线.面要素的两两相互关系,包括相合.分离.相交.重合.包含.相邻等不同位置关系,都可以通过GEOS类库中提供的函数进行分析和判断.并且GEOS类库提供了缓冲

ArcGIS Engine开发之空间查询

空间查询功能是通过用户选择的空间几何体以及该几何体与当前地图中要素之间的几何关系进行空间查找,从而得到查询结果的操作. 相关类与接口 空间查询相关的类主要是SpatialFilter类,其实现的接口主要为ISpatialFilter接口.SpatialFilter类是空间关系过滤类,ISpatialFilter接口的成员主要用于返回和修改数据过滤器所使用的空间关系.ISpatialFilter接口同时包含了空间和属性两种查询约束,它继承了IQueryFilter接口. 1.Geometry属性:

LAN网络规划

一.业务分析了解客户的需求进行设计 如:资金预算  需求 性能  最在意的是什么  引导客户提出他们的需求      保护用户投资       设备购买成本      维护成本 客户考虑网络建设成本 设计安全 可靠 稳定的网络前提 运营维护成本 企业发展计划公司发展网络也在发展  保证后期扩展性 二.物理拓扑分析 企业物理拓扑问题   工作位置设备摆放位置工作组问题            规划vlan 电缆线问题            决定一个网络的好坏 三.流量预测工作站问题 服务器问题主干网

空间数据挖掘常用方法

问题1:空间数据挖掘有哪些常用方法,举例说明一种方法的原理及应用. 答:空间数据挖掘的常用方法有:统计法,聚类方法,关联规则发掘方法,Rough集方法,神经网络方法,云理论,证据理论,模糊集理论,遗传算法等算法(出自丁信宙,仇环,苏晓庆. 基于云理论的缺损数据推理和预测 山东理工大学学报 2006年11月).除此以外还有老师课件上提到的聚类检测,决策树方法等. 以下对于一些常见模型做一简述: 1.空间分析方法 (Spatial Analysis Approach) 利用GIS的各种空间分析模型和