ITopologicalOperator接口

来源:互联网 发布:jsp订餐系统源码 编辑:程序博客网 时间:2024/05/22 03:27

ITopologicalOperator接口简介

·        ITopologicalOperator接口用来通过对已存在的几何对象做空间拓扑运算以产生新的结合对象。

·        实现了ITopologicalOperator接口的类有:Point Multipoint Polyline Polygon MultiPatch 这些都是高级几何对象,另外GeometryBag也实现了该接口,低级的构建几何对象如Segments(Line,Circular Arc,Elliptic Arc,BezierCurve),Paths或者Rings如果想使用该接口需包装成高级几何对象。

·        ITopologicalOperator接口在GIS开发中使用非常广泛,通常GIS系统中缓冲区分析,裁剪几何图形,几何图形差分操作,几何图形合并操作等都需要使用此接口。

下表是ITopologicalOperator接口主要的方法说明:

方法名称

说明

Boundary

几何图形对象的边界

Buffer

对几何图形对象进行缓冲区空间拓扑操作

lip

对几何图形对象进行裁剪空间拓扑操作

ConstructUnion

高效的合并多个枚举几何对象与单个几何对象合并为单个几何对象,这对于大量几何对象的合并非常高效

ConvexHull

构建几何对象的凸边形

Cut

切割几何对象

Difference

一个几何图形减去它与另一个几何图形相交的部分

Intersect

两个同维度几何对象的交集部分

Simplify

使几何对象拓扑一致

SymmetricDifference

对称差分将两个几何图形的并集部分减去两个几何图形交集的部分

Union

合并两个同维度的几何对象为单个几何对象

1. Boundary属性
如图所示Polygon几何对象的Boundary是组成它的Polyline几何对象
Polyline几何对象的[Boundary是组成它的顶点Point几何对象
Point几何对象的Boundary是空对象,示意图如下图所示:
2.
Buffer方法

Buffer方法可以给一个高级几何对象产生一个缓冲区,无论是Polygon,Polyline,Point它们的缓冲区都是具有面积的几何对象。

3.Clip方法
Clip方法可以将用一个Envelope对象对一个几何对象进行裁剪,参见结果是几何对象被Envelope 对象所包围的部分。

4.ConvexHull方法
ConvexHull方法可以产生一个几何图形的最小的边框凸多边形(没有凹面包含几何图形的最小多边形)

5.Cut方法
Cut方法不支持GeometryBags几何对象,它可以指定一条切割曲线和一个几何图形,经过切割运算后把几何图形分为左右两部分,做,右两部分是相对曲线的方向而言。点与多点不能被切割,PolylinePolygon只有与切割曲线相交时才能执行Cut方法。

6.Difference方法
Difference方法用于产生两个几何对象的差集。
7.Union方法
ConstructUnion都用于合并几何对象,所不同的是前者合并两个同维度的几何对象为单个几何对象,而后者是高效的合并多个枚举几何对象与单个几何对象合并为单个几何对象,这对于大量几何对象的合并非常高效的。8.Intersect方法
Intersect方法用于返回两个同维度几何对象的交集,即两个几何对象的重合部分。9.SymetricDifference方法
SymetricDifference方法用于产生两个几何图形的对称差分,即两个几何的并集部分减去两个几何的交集部分。

10.IsSimple属性和Simplify方法
IsSimple属性用于检测几何对象是否是拓扑正确即为简化几何对象,而Simplify方法用于简化几何对象使几何对象的拓扑正确。

 

原创粉丝点击