Engine发教程 - 图文 下载本文

本帖最后由 fxlcoco 于 2009-5-24 16:27 编辑

2.1目标

1.熟悉ArcGIS Engine Geometry模型,通过程序构建常用几何对象 2.熟悉空间参考

3.通过野外测量点构建一个polygon shapefile功能开发

2.2准备工作

1.IDE:Visual Studio 2005/2008 2.ArcGIS Engine Developer kit 9.3

3.自造一份包含X,Y坐标的*.txt文本文档数据(即野外测量点)

2.3Geometry主要几何对象模型图

图1

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

2.4几何对象

2.4.1Point和MultiPoint几何对象 2.4.1.1Point几何对象

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

1. 2. 3.

IPoint pPoint = new PointClass(); pPoint.X = 100; pPoint.Y = 100;

2.4.1.2MultiPoint几何对象

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

对象组成。

图2

以下代码片段演示如何构建Multipoint对象:

//定义第一个点

IPoint pPoint1 = new PointClass(); pPoint1.X = 100; pPoint1.Y = 100;

//定义第二个点

IPoint pPoint2 = new PointClass();

pPoint2.X = 200; pPoint2.Y = 200;

……//构建其他点

IPointCollection pMultipoint = new MultipointClass();

object o=Type.Missing;

//添加第一个点,不需要设置点的顺序,参数设置为Type.Missing

pMultipoint.AddPoint(pPoint1, ref o, ref o);

//添加第二个点,不需要设置点的顺序,参数设置为Type.Missing

pMultipoint.AddPoint(pPoint2, ref o, ref o);

……//添加其他点

2.4.2Segment几何对象