- 1、本文档共24页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
牟乃夏ArcEngine教程-第7章__矢量数据空间分析
牟乃夏 ArcGIS Engine 地理信息系统开发教程配套PPT---第7章 矢量数据空间分析
目录
1. 空间拓扑分析
2. 空间关系运算
3. 叠加分析
4. 数据格式转换
5. 添加X Y数据
6. 使用GP工具进行空间分析
1. 空间拓扑分析
通过一系列的基于一个或者多个几何图形间的逻辑比较,然后返回另外一些几何图形的过程就是空间几何图形的拓扑运算。它是空间分析的基础,各种空间分析的结果都可以通过几何图形之间的拓扑运算实现。
相关类与接口(ITopologicalOperator接口)
ITopologicalOperator接口的方法仅仅使用在高级别几何对象上,即Point、MultiPoint、Polyline和Polygon,如果要使用在低等级的几何对象中,如Segment(Line,Circular,Arc,Elliptic Arc,Bezier Curve)、Path或Ring上,需要先将他们组合成高级别几何对象才行。
1. 空间拓扑分析
ITopologicalOperator接口的主要方法及属性有:
1)Boundary属性
2)Buffer方法
3)Clip方法
4)Union与ConstructUnion方法
5)ConvexHull方法
6)Cut方法
7)Difference方法与SymmetricDifference方法
8)Intersection方法
9)Simplify方法
1. 空间拓扑分析
1.1 实例详解-缓冲区分析
本例的目的是实现在地图上点击选择任意一个多边形要素,程序自动生成该多边形一定范围内的缓冲区并渲染到地图上。
实现的基本思路为:
添加缓冲区分析操作工具;
在其OnMouseDown方法中执行点击查询要素操作;
将查询结果要素通过ITopologicalOperator. Buffer方法进行缓冲区生成操作;
将缓冲区生成结果利用空间要素渲染方式展示到地图上。
1. 空间拓扑分析
其程序设计具体步骤为:
向工程项目中添加继承自BaseTool类的文件,该类实现了BaseCommand基础类和ITool接口的所有方法;
添加ToolBufferAnalysis 类中的OnClick方法的实现代码,用以判定是否符合缓冲区操作的前提条件(地图中是否加载图层),并修改鼠标样式;
添加ToolBufferAnalysis 类的OnMouseDown方法的实现,生成缓冲区并将生成的缓冲区要素添加到地图中;
1. 空间拓扑分析
在主程序窗体的按钮事件中,利用ICommand接口调用ToolBufferAnalysis工具类,实现点击选择地理要素并生成缓冲区的操作;
点击选择后的多边形生成缓冲区效果展示
1. 空间拓扑分析
1.2 实例详解-获取多边形要素边界
本例旨在实现通过在地图上点击选择任意一个多边形图形要素,系统自动获得该多边形的边界并渲染展示到地图上。
核心代码
2. 空间关系运算
相关类与接口(IRelationalOperator?接口)
几何对象之间空间关系主要有:包含、相等、在内部、相交等。矢量数据的空间关系运算需要用到IRelationalOperator接口,通过该接口的不同方法判定两个几何对象之间的关系是否存在。关系运算符用以比较两个几何体,并返回一个boolean型值来说明某种空间关系是否存在。
空间包含关系(Contains、Within)
交叉(Crosses)
相离(Disjoint)
重叠(Overlaps)
相等(Equals)
相接(Touches)
2. 空间关系运算
2.1 实例详解-查找一多边形要素的所有邻接要素
本例通过在地图上点击选择任意一个多边形,系统自动获取与该多边形要素相邻接的其它多边形并显示到地图上。
核心代码
3. 叠加分析
叠加分析(也称叠置分析)是将同一区域,相同参考系统、相同比例尺的两个或多个数据进行叠加产生一个新数据层的操作,其结果综合了原来两层或多层要素所具有的属性信息,并且还能从已有的数据中提取空间隐含的信息。
相关类与接口(IBasicGeoprocessor接口)
叠加分析所用到的主要接口是IBasicGeoprocessor接口,它提供了基本的矢量数据处理的方法和属性,概括为叠置求交与叠置求和。该接口包括5个方法(Intersect、Union、Clip、Dissolve、Merge)和2个属性(SpatialReference和CancelTracker)。
3. 叠加分析
Union方法原理图
3. 叠加分析
实例详解:两相交面图层的裁剪(Clip)分析
本例利用IBasicGeoprocessor接口的Clip方法实现两个相交面图层的裁剪分析操作,通过输入被裁剪要素图层和裁剪要素图层,获得
文档评论(0)