ArcEngine几何对象简单介绍

Geometry是ArcGIS Engine中使用最为广泛的对象集之一,用户在创建、删除、编辑和进行地理分析的时候,就是处理一个包含几何形体的矢量对象;除了显示要素意外,控件对象选择,要素符号化,标注要素,编辑要素都需要Geometry参与。下图是Geometry的主要几何对象模型图

                     

 1、Point和MultiPoint几何对象

Point:是一个0维的几何图形,具有X,Y坐标值,以及一些可选的属性:如高程值(Z值),度量值(M值) 和ID号,点对象用于描述精确定位的对象,例如一个电话亭在一个城市的精确位置。

MultiPoint:点集对象是一系列无序的点的群集,这些点具有相同的属性信息。例如可以用一个点集来表示整个城市天然气调压站。如下图所示:一个Multipoint对象由6个Point对象组成。

 

 

2、Segment几何对象

         Segment有起点、终点、参数定义三个方面的定义。

 

 

3、Path和Ring几何对象

     Path是连续的Segment的集合,除了路径的第一个Segment和最后一个Segment外其余的Segment的起始点都是前一个Segment的终止点,即Path对象的中的Segment不能出现分离,Path可以是任意数的Line,CircularArc,EllipticArc和BezierCurve的组合。

 

一个或多个Path组成一个Polyline对象。

     Ring是一个封闭的Path即起始和终止点有相同的坐标值。它有内部和外部属性。

 一个或多个Ring对象组成一个Polygon对象。

4、Polyline和Polygon几何对象

Polyline对象是由一个或多个相连或者不相连的path对象的有序集合,它可以是单个Path对象组成,也可以是多个相连的Path对象组成,或者是多个分离的Path组成,如下图所示。Polyline通常用来代表线状地物如道路,河流,管线等等。

 

     一个或多个Path组成一个Polyline对象。一个Polyline对象必须满足以下准则:

(1)组成Polyline对象的所有Path对象必须是有效的.

(2)组成Polyline对象的所有Path对象不能重合,相交或自相交。

(3)组成Polyline对象的多个Path对象可以连接与某一点,也可以分离。

(4)Path对象的长度不能为0。

IPolyline是Polyline类的主要接口,IPolyline的Reshape方法可以使用一个Path对象为一个Polyline对象整形,IPolyline的SimplifyNetwork方法用于简化网络。Polyline对象可以使用IGeometryCollection接口添加Path对象的方法来创建,使用该接口需注意以下情况::

(1)每一个Path对象必须是有效的,或使用IPath::Simplify方法后有效。

(2)由于Polyline是Path对象的有序集合,所以添加Path对象时必须注意顺序和方向.

为了保证Polyline是有效的,可以创建完Polyline对象后使用ITopologicalOperator接口的Simplify方法。

Polylgon对象是由一个或多个Ring对象的有序集合,它可以是由单个Ring 对象构成,也可以使用多个Ring组成如下图所示。其中Ring可以分为Outer Ring(外环)和Inner Ring(内环)之分。外环和内环都是有方向的,它们的区别是外环的方向是顺时针的,内环的方向是逆时针。Polygon通常用来代表有面积的多边形矢量对象,如行政区,建筑物等

 

 

5、Envelope几何对象

Envelope是所有几何对象的外接矩形,用于表示几何对象的最小边框,所有的几何对象都有一个Envelope对象,IEnvelope是Envelope对象的主要接口,通过它可以获取几何对象的XMax,XMin,YMax,YMin,Height,Width属性。通过IEnvelope的Expand方法还可以按比例缩放Envelope对象的范围,如下图所示:

 

    这里只简单介绍了几种几何对象,有兴趣的话大家可以深入研究 ,一起探讨。

posted @ 2013-03-19 00:16  清灵阁主  阅读(1750)  评论(0)    收藏  举报