欢迎来到天天文库
浏览记录
ID:9294913
大小:7.64 MB
页数:186页
时间:2018-04-27
《arcgis engine基础开发教程——创建一个arcgis engine桌面应用程序》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、ArcGISEngine基础开发教程(1)——创建第一个ArcGISEngine桌面应用程序1创建第一个ArcGISEngine桌面应用程序ArcGISEngine9.3提供了丰富的GIS组件方便用户快速的定制开发一个GIS应用程序,无需写代码即可实现GIS数据加载,地图操作等功能甚至可以实现高级编辑以及空间分析功能。接下来使用ArcGISEngine9.3提供了MapControlApplication模块来创建第一个ArcGISEngine桌面应用程序,并为桌面应用应用程序提供编辑功能。1.1目标1.创建第一个ArcGISEn
2、gine桌面应用程序2.为应用程序添加编辑功能。1.2准备工作1.IDE:VisualStudio2005/20082.ArcGISEngineDeveloperkit9.33.制作ArcGIS实验数据地图文档MXD1.3设计流程图1.4制作地图文档在ArcMap中加载数据后,点击保存生成一个*.mxd地图文档,如图1所示:图11.5创建第一个ArcGISEngine桌面应用程序在VisualStudio2008中新创建项à选择àArcGISàEngineàMapControlApplication,点击确定,如图2所示:图2可以
3、看到在VisualStudio中看到在新创建的项目中自动加载了ToolBarControl、TocControl、LicenseControl、MapControl四个ArcGISEngine控件以及一个.NETToolStripMenuItem菜单控件,如图3所示:图31.6加载MXD地图文档数据单击F5键运行程序,然后单击打开MXD地图文档按钮打开MXD地图文档,如图4所示:图4可以看到应用程序把MXD地图文档加载到MapControl地图上,可以使用ToolbarControl提供的常用GIS功能如:放大,缩小,信息查询等功
4、能。如图5所示:图51.7为应用程序添加编辑功能在应用程序设计模式下右键单击ToolbarControl,单击属性选项弹出ToolbarControl属性对话框,单击Items选项卡,单击Add…按钮弹出ControlsCommands对话框,单击Toolset选项卡,选择FeatureEditors选项,拖动到属性对话框工具栏的指定位置。如图6所示图61.8体验使用编辑功能:运行应用程序,可见工具条多了一个和ArcMap中功能类似的编辑工具集,开始对面图层进行编辑创建一个新的面图元,如图7所示。图7综上GIS应用开发人员通过使用
5、ArcGISEngine可以快速创建自定义GIS应用程序。ArcGISEngine基础开发教程(2)——学习几何对象与空间参考.1目标1.熟悉ArcGISEngineGeometry模型,通过程序构建常用几何对象2.熟悉空间参考3.通过野外测量点构建一个polygonshapefile功能开发2.2准备工作1.IDE:VisualStudio2005/20082.ArcGISEngineDeveloperkit9.33.自造一份包含X,Y坐标的*.txt文本文档数据(即野外测量点)图1Geometry是ArcGISEngine中使
6、用最为广泛的对象集之一,用户在创建、删除、编辑和进行地理分析的时候,就是处理一个包含几何形体的矢量对象;除了显示要素意外,控件对象选择,要素符号化,标注要素,编辑要素都需要Geometry参与。图1是Geometry的主要几何对象模型图,接下来将一一介绍这些几何对象。2.4几何对象2.4.1Point和MultiPoint几何对象2.4.1.1Point几何对象Point:是一个0维的几何图形,具有X,Y坐标值,以及一些可选的属性:如高程值(Z值),度量值(M值)和ID号,点对象用于描述精确定位的对象,例如一个电话亭在一个城市的精
7、确位置以下代码演示如何创建一个Point对象:1.IPointpPoint=newPointClass();2.pPoint.X=100;3.pPoint.Y=100;复制代码2.4.1.2MultiPoint几何对象MultiPoint:点集对象是一系列无序的点的群集,这些点具有相同的属性信息。例如可以用一个点集来表示整个城市天然气调压站。如下图所示:一个Multipoint对象由6个Point对象组成。图2以下代码片段演示如何构建Multipoint对象://定义第一个点IPointpPoint1=newPointClass(
8、);pPoint1.X=100;pPoint1.Y=100;//定义第二个点IPointpPoint2=newPointClass();pPoint2.X=200;pPoint2.Y=200;……//构建其他点IPointCollectionpMu
此文档下载收益归作者所有