基于ArcGIS_Engine组件开发教程.doc
《基于ArcGIS_Engine组件开发教程.doc》由会员分享,可在线阅读,更多相关《基于ArcGIS_Engine组件开发教程.doc(52页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、目 录1引 言21.1ArcGIS 9总览21.2读者定位与预期效果31.3ArcGIS Engine的功能41.4ArcGIS Engine组成部分42软件安装62.1安装前准备62.2安装Visual Studio 200562.3安装ArcGIS Engine Runtime9.3112.4安装ArcGIS Engine Developer Kit For Microsoft .NET Framework 9.3152.5ArcGIS Engine Developer Kit的授权181 引 言1.1 ArcGIS 9总览ArcGIS为用户提供了一整套功能强大的GIS框架。本文将主要关注
2、如何快速的建立和发布使用ArcGIS Engine定制的GIS应用程序。ArcGIS Engine对于应用系统中需要加入地理信息功能的用户来说是非常好的一个选择。在ArcGIS 9系列产品中,ArcGIS Desktop、ArcGIS Engine和ArcGIS Server都是基于核心组件库ArcObjects搭建。ArcObjects组件库有3000多个对象可供开发人员调用,其中有细粒度的小对象,例如:Geometry对象;也有粗粒度的大对象,例如Map对象,通过这些对象开发人员可以操作控制文档(mxd,3dd,sxd等)、和空间数据库进行交互。ArcObjects组件库为开发人员集成了大
3、量的GIS功能,可以快速的帮助开发人员进行GIS项目的开发。由于ArcGIS Desktop、ArcGIS Engine和ArcGIS Server三个产品都是基于ArcObjects搭建的应用,那么对于开发人员来说ArcObjects的开发经验在这三个产品中是通用的。开发人员可以通过ArcObjects来扩展ArcGIS Desktop,定制ArcGIS Engine应用,使用ArcGIS Server实现企业级的GIS应用。ArcGIS可以在多种编程环境中进行开发,其中包括:C+、支持COM的编程语言、.NET、Java等。ArcGIS Desktop的开发包(SDK)包含在ArcView
4、、ArcEditor和ArcInfo中,支持COM和.NET开发。用户可以应用ArcGIS Desktop SDK来扩展ArcGIS Desktop的功能,例如添加一些新的工具,定制用户界面,增加新的扩展模块等。ArcGIS Server实现了一套标准的Web GIS服务(例如:制图,访问数据,地理编码等),支持企业级应用。ArcGIS Server SDK使得开发人员可以建立集中式的GIS服务器来实现GIS功能,发布基于Web的GIS应用,执行分布式GIS运算等。2004年,美国ESRI发布ArcGIS Engine,ArcGIS Engine开发包提供了一系列可以在ArcGIS Deskt
5、op框架之外使用的GIS组件,ArcGIS Engine的出现对于需要使用ArcObjects的开发人员来说是个福音,因为ArcGIS Engine发布之前,基于ArcObjects的开发只能在庞大的ArcGIS Desktop框架下进行。1.2 学习定位与预期效果本资料是适合这样的用户阅读:w 具备ArcGIS Desktop使用经验,w 使用过ArcGIS的若干种数据格式,w 对ArcGIS空间数据组织有一定的了解。w 对ArcGIS Desktop的制图表达具备初步认识。w 了解C#编程语言。通过阅读本学习资料,让用户能够迅速了解ArcGIS Engine的组成部分,了解ArcGIS E
6、ngine能完成哪些任务,掌握如何搭建起ArcGIS Engine开发环境,并能够开发典型的GIS应用程序,获取解决问题的途径,为用户的进一步深入开发指导方向,提供深入学习的方式和渠道。1.3 ArcGIS Engine的功能开发人员可以使用ArcGIS Engine的开发包实现如下功能:w 分图层显示专题图,例如:道路,河流,行政边界等。w 浏览、缩放地图w 查看地图上特征要素的信息w 在地图上检索、查找特征要素w 在地图上显示文本注记w 在地图上叠加卫星影像或航摄影像w 在地图上绘制点、线、面几何体w 通过矩形、圆形或多边形来选中地图上的要素w 通过SQL语句来查找要素w 使用各种渲染方式
7、来绘制地图图层,例如:分级渲染,柱状图渲染,点密度渲染,依比例尺渲染等。w 动态绘制实时的数据,例如实时的GPS坐标点。w 转换空间数据的坐标系。ArcGIS Engine的授权文件(*.ecp)控制用户可以使用哪些功能。ArcGIS Engine的功能是否可以使用需要根据用户自己的授权文件而定。编辑空间数据。ArcGIS Engine开发包使得用户可以创建、修改或者删除在Geodatabase或者shapefile中的矢量要素。标准的ArcGIS Engine Runtime可以编辑Shapefile和简单的Personal Geodatabase要素,如果需要编辑Enterprise Ge
8、odatabase数据,需要使用Geodatabase Update扩展。空间建模和分析。ArcGIS Engine Spatial扩展模型提供了强大的空间建模和空间分析功能。用户可以创建、查询、分析栅格数据,执行整合的栅格和矢量分析,从栅格数据中提取各种信息。1.4 ArcGIS Engine组成部分ArcGIS Engine由一个软件开发工具包(SDK)和一个运行时(Runtime)组成。ArcGIS Engine从功能层次上可划分为如下五个部分:1 基本服务由GIS核心ArcObjects构成,几乎所有GIS应用程序都需要,如要素几何体(feature geometry)和显示(disp
9、lay)。 2 数据存取ArcGIS Engine可以对许多栅格和矢量格式进行存取,包括强大的地理数据库(Geodatabase)。 3地图表达创建和显示带有符号和标注的地图。4 开发组件用于快速开发应用程序的界面控件。5 运行时选项ArcGIS Engine运行时可以与标准功能或其它高级功能一起部署。 ArcGIS Engine Developer Kit是一个基于组件的开发产品,主要是面向开发人员,提供了和开发环境的集成,开发帮助,类库对象模型图,代码示例等。ArcGIS Engine的另一个组件就是其运行时(Runtime)。ArcGIS Engine Developer Kit建立的所
10、有应用程序在运行时都需要相应级别的ArcGIS Engine运行时。ArcGIS Engine运行时有多种版本级别,从标准版本一直到企业版本。标准 Engine运行时提供所有ArcGIS应用程序的核心功能。这个级别的ArcGIS Engine运行时可以操作几种不同的栅格和矢量格式、进行地图表达和创建以及通过执行各种空间或属性查询查找要素。这个级别的ArcGIS Engine运行时还可以进行基本数据创建、编辑Shapefile和简单的个人地理数据库(Personal Geodatabase)及GIS分析。编辑Enterprise Geodatabase扩展模块。ArcGIS Engine运行时E
11、nterprise Geodatabase编辑增加了创建和更新多用户企业Geodatabase的功能。ArcGIS Engine的其它扩展模块包括:空间分析扩展模块、3D分析扩展模块、网络分析、StreetMap扩展模块等。2 软件安装在开发ArcGIS Engine程序之前,需要首先部署完成开发环境。本文的ArcGIS Engine开发实例以C#语言为例,C#的集成开发环境选择Visual Studio 2005,对ArcGIS Engine开发环境的搭建需要遵循下面的步骤顺序进行:a) 安装Visual Studio 2005b) 安装ArcGIS Engine Runtime9.3c)
12、安装ArcGIS Engine Developer Kit For Microsoft .NET Framework 9.3ArcGIS Engine Developer Kit有支持多种开发语言的开发包,用户可以使用VB6,VC+,C#,Java等对ArcGIS Engine进行开发。每种语言都有对应的ArcGIS Engine Developer Kit安装包,本文主要以C#为例。注释:ArcGIS Engine Developer Kit For Microsoft .NET Framework的安装要求操作系统已经安装了.Net Framework 2.0,因为ArcGIS Engin
13、e Developer Kit For Microsoft .NET Framework在安装时会检测本地是否已经安装.Net Framework 2.0,如果已经安装,那么ArcGIS Engine的.Net类库就会安装到系统上,如果没有检测到.Net Framework 2.0,那么ArcGIS Engine的.Net类库就不会安装到系统上;具体表现为在ArcGIS Engine的安装目录下会有一个DotNet的文件夹,如果该文件夹存在就表示ArcGIS Engine的.Net类库已经安装到本地系统上。这里我们要安装开发环境,开发工具选择Visual Studio 2005,安装Visua
14、l Studio 2005的过程中会自动安装.Net Framework 2.0。2.1 安装前准备a) Visual Studio 2005安装光盘或安装文件。b) ArcGIS Engine Runtime9.3的安装光盘或安装文件。c) ArcGIS Engine Developer Kit For Microsoft .NET Framework 9.3的安装光盘或安装文件。d) ArcGIS Engine Developer Kit的授权文件。2.2 安装Visual Studio 20051. 把Visual Studio 2005安装光盘放入光驱。找到SETUP.EXE文件,双击
15、运行,在弹出的对话框中点击“安装 Visual Studio 2005”。2. 在弹出的安装程序向导界面中,点击“下一步”。3. 选中“我接受许可协议中的条款”,点击“下一步”。4. 在左边的面板中选中“自定义”,默认的安装路径是C:Program FilesMicrosoft Visual Studio 8,如果需要修改安装路径,点击“浏览”,最后点击“下一步”。5. 为了加快安装的速度和节省磁盘空间,可以把 Visual C+ 、Visual J+ 和Microsoft SQL Server 2005 Express前面的对勾去掉,点击“安装”。6. 安装程序开始安装组件,请耐心等待几分钟
16、。7. 点击“完成”。8. 点击“退出”。至此Visual Studio 2005安装完成。2.3 安装ArcGIS Engine Runtime9.3在安装完成Visual Studio 2005之后如果直接安装ArcGIS Engine Developer Kit,系统会提示需要先安装ArcGIS Engine Runtime 9.3或者ArcGIS Desktop 9.3。下面开始安装ArcGIS Engine Runtime 9.3。1. 把ArcGIS Engine Runtime 9.3安装光盘放入光驱,或找到安装文件。找到Setup.exe文件,双击运行,在弹出的对话框中点击“N
17、ext”。2. 选中“I accept the license agreement”,点击“Next”。3. 点击“Next”。4. ArcGIS Engine Runtime 默认安装在C:Program FilesArcGIS路径下面,如果需要更改安装路径点击“Browse”,选中一个安装文件夹即可。点击“Next”。5. ArcGIS程序需要使用 Python,默认安装在C:Python24路径下面,如果需要更改安装路径,点击“Browse”,选中一个安装文件夹即可。点击“Next”。6. 点击“Next”。7. 安装程序开始安装,请耐心等待几分钟。8. 安装完成,点击“Finish”。
18、2.4 安装ArcGIS Engine Developer Kit For Microsoft .NET Framework 9.31. 把ArcGIS Engine Developer Kit For Microsoft .NET Framework 9.3的安装光盘放入光驱。双击ESRI.exe,在对话框中点击“ArcGIS Engine Developer Kit For Microsoft .NET Framework”。2. 点击“Next”。3. 选中“I accept the license agreement”;点击“Next”。4. 该安装程序会安装到本地一些开发文档,代码示
19、例,一些小工具,Visual Studio2005的模板等,点击“Next”。5. 点击“Next”。6. 安装程序开始安装。7. 点击“Finish”。ArcGIS Engine SDK for Microsoft .Net Framework安装完成。下面会弹出一个对话框开始注册ArcGIS Engine SDK。2.5 ArcGIS Engine Developer Kit的授权1. 继续上面的安装,在点击“Finish”按钮后,出现如下界面,点击“Register Now”2. 在注册选项中选中下面的一下使用授权文件进行注册,点击“下一步”3. 点击“Browse”。4. 在打开文件对
20、话框中,浏览到授权文件所在的文件夹,选中授权文件,授权文件一般是以*.ecp为扩展名,点击“打开”。5. 点击“下一步”。6. 点击“完成”,ArcGIS Engine Developer Kit授权完成3 二维控件的使用ArcGIS Engine9.3提供了一些功能非常强大的控件可以帮助开发人员快速的开发自己的GIS应用,例如: w MapControl w PageLayoutControl w SceneControl w GlobeControl w ToolbarControl w TOCControl w SymbologyControl (9.3版本新增控件)w LicenseC
21、ontrol本章以一个示例程序为例,讲解如何使用ArcGIS Engine开发GIS应用,该示例主要练习:如何使用MapControl、ToolbarControl、TOCControl,如何向工具栏添加ArcGIS Engine内置的工具和命令,如何浏览mxd地图文档,如何向地图控件中添加shapefile文件,如何通过lyr文件添加图层,如何读取要素类的属性信息并且显示到网格控件中。3.1 地图浏览本示例在不写任何代码的情况下,创建一个地图浏览小程序,可以打开mxd地图文档,对地图进行缩放,漫游,点击查询属性等。1. 从开始菜单中启动Visual Studio 2005,启动画面如下。2.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 ArcGIS_Engine 组件 开发 教程
限制150内