arcengine的基本原理对象组件模型.ppt





《arcengine的基本原理对象组件模型.ppt》由会员分享,可在线阅读,更多相关《arcengine的基本原理对象组件模型.ppt(48页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、Copyright 2004 ESRI.All rights reserved.Developing Applications with ArcGIS EngineArcEngine 基本原理基本原理组件对象模型组件对象模型上一课上一课 内容复习提要内容复习提要uu1.1 1.1 地理信息系统定义、类型和构成地理信息系统定义、类型和构成地理信息系统定义、类型和构成地理信息系统定义、类型和构成uu1.2 1.2 地理信息系统的研究内容地理信息系统的研究内容地理信息系统的研究内容地理信息系统的研究内容uu1.3 1.3 地理信息系统的功能地理信息系统的功能地理信息系统的功能地理信息系统的功能uu1
2、.4 GIS1.4 GIS软件的发展与技术软件的发展与技术软件的发展与技术软件的发展与技术uu1.5 GIS1.5 GIS软件的开发模式软件的开发模式软件的开发模式软件的开发模式uu1.6 GIS1.6 GIS软件的开发内容软件的开发内容软件的开发内容软件的开发内容uu1.7 GIS1.7 GIS软件开发的相关技术软件开发的相关技术软件开发的相关技术软件开发的相关技术课程课程2uArcGIS整体架构整体架构uArcEngine与与ArcObject的关系与区别的关系与区别uArcEngine的体系结构的体系结构u对象组件模型对象组件模型COMu如何阅读如何阅读OMDuArcEngine软件安装
3、说明软件安装说明uArcEngine在在VB 或或.net环境中的应用实例环境中的应用实例uArcGIS的二次开发的二次开发VBA2.1 ArcGIS 整体架构整体架构ArcGIS DesktopArcGIS ServerArcIMSArcGIS Mobile ArcPadArcGIS Engine桌面桌面 GIS嵌入式嵌入式 GIS服务器服务器 GIS移动移动 GISGeodatabaseDBMSFile-basedXMLArcSDEArcEditorArcViewArcInfoEngine Developer KitServer Developer KitCustomizationDesk
4、top Developer Kit.NET C+VB Java.NET VC+VB.NETADFJavaADFC+ArcObjectsCustomizationXML+VBScriptArcPad Application BuilderJavaScriptHTML/DHTMLXML.NETServicesJSPJavaActiveX(ASP)ColdFusion2.1 ArcGIS 整体架构整体架构uArcGIS Desktop:一套集成的高级:一套集成的高级GIS产品(产品(ArcReader,ArcView,ArcEditor,ArcInfo,ArcGIS扩展模块等);扩展模块等);uAr
5、cGIS Engine:嵌入式:嵌入式GIS组件库,可使用组件库,可使用C+,COM,.NET和和Java来构建自定义的、面向行业的应用软件;来构建自定义的、面向行业的应用软件;uArcGIS Server:GIS软件对象的共享库,用于构建企业和网软件对象的共享库,用于构建企业和网络计算框架内的应用软件。它使用络计算框架内的应用软件。它使用.NET/ASP和和Java/JSP来来构建基于构建基于SOAP的网络服务和网络应用程序;的网络服务和网络应用程序;uArcIMS:GIS网络服务,通过开放的因特网协议发布地图、网络服务,通过开放的因特网协议发布地图、数据和元数据;数据和元数据;uArcSD
6、E:在大量的数据库管理系统(:在大量的数据库管理系统(DBMSs)中进行地理)中进行地理数据管理的界面。数据管理的界面。2.1 ArcGIS 整体架构整体架构u所有产品共享所有产品共享ArcObjectsuEngine包括核心包括核心 ArcObjects的功能的功能ArcGIS DesktopArcGIS EngineArcGIS Server2.2 ArcObjects与与ArcEngine的联系与区别的联系与区别联系:联系:uArcEngine包括核心包括核心 ArcObjects的功能,其是对的功能,其是对AO中的大部分接口、类、库进行中的大部分接口、类、库进行封装所构成嵌入式组件。封
7、装所构成嵌入式组件。uAe中的组件接口、方法、属性与中的组件接口、方法、属性与Ao是相同的。是相同的。区别:区别:开发环境:开发环境:u ArcObjects必须依赖与必须依赖与ArcGIS Desktop桌面平台,即购买安装了桌面平台,即购买安装了ArcGIS Desktop的同时,安装的同时,安装ArcObjects,才能利用,才能利用AO进行开发。进行开发。uArcEngine是独立的嵌入式组件,不依赖是独立的嵌入式组件,不依赖ArcGIS Desktop桌面平台,直接安装桌面平台,直接安装ArcEngine runtime 和和Developer Kit后,即可利用其在不同开发语言环境
8、下开发后,即可利用其在不同开发语言环境下开发 功能功能:Ao的功能更强大,的功能更强大,Ae的功能相对弱些,的功能相对弱些,Ae 不具备不具备Ao的少部分功能的少部分功能 可以理解为可以理解为ArcEngine为嵌入式的为嵌入式的ArcObjects,其具有简洁,灵活,易用,可移,其具有简洁,灵活,易用,可移植性强的特点。植性强的特点。2.3 ArcGIS Engine 体系结构体系结构P1619ArcEngine 具有哪些功能具有哪些功能?u基础服务基础服务u核心函数核心函数,几何操作几何操作u数据存取数据存取u可以访问栅格数据和矢量数据可以访问栅格数据和矢量数据u地图分析地图分析u高级空间
9、分析和高级空间分析和SQL 访问访问u地图表达地图表达u标注标注,符号化符号化,专题图专题图u开发组件开发组件uDeveloper kit,mapping 和和 3D 控件控件,toolbar,TOCArcGIS EngineArcGIS Engine功能功能u显示具有多个地图图层(如公路,河流和边界)的地图。显示具有多个地图图层(如公路,河流和边界)的地图。u漫游与缩放地图。漫游与缩放地图。u通过单击来识别地图上的要素。通过单击来识别地图上的要素。u搜索地图上的要素。搜索地图上的要素。u显示字段值的文本标注。显示字段值的文本标注。u绘制来自于航空照片或卫星影像的图像。绘制来自于航空照片或卫星
10、影像的图像。u绘制图形要素(如点、线、圆以及多边形)。绘制图形要素(如点、线、圆以及多边形)。u绘制描述性文本。绘制描述性文本。u沿线或在方框、区域、多边形及圆内选择要素。沿线或在方框、区域、多边形及圆内选择要素。u在其它元素的特定距离内选择要素。在其它元素的特定距离内选择要素。u使用使用SQL表达式查找并选择要素。表达式查找并选择要素。u使用主题方法为要素着色(如值映射图、分类图和点密度图)。使用主题方法为要素着色(如值映射图、分类图和点密度图)。u动态显示即时或时间序列数据。动态显示即时或时间序列数据。u根据提供的街道地址或交点在地图上查找位置。根据提供的街道地址或交点在地图上查找位置。u
11、转换地图数据的坐标系统。转换地图数据的坐标系统。u执行形状的几何操作,来创建缓冲区;计算差值;或查找形状的交集,联合或反转交集。执行形状的几何操作,来创建缓冲区;计算差值;或查找形状的交集,联合或反转交集。u操作形状或旋转地图。操作形状或旋转地图。u创建和更新几何特征及其属性。创建和更新几何特征及其属性。u交互操作个人地理数据库与主地理数据库。交互操作个人地理数据库与主地理数据库。uArcGIS Engine非常适合于构建高级非常适合于构建高级GIS应用软件的基础制图。应用软件的基础制图。ArcGIS Engine 产品和扩展产品和扩展uArcGIS Engine Runtime u运行所有的
12、运行所有的ArcEngine应用程序都必需的应用程序都必需的u安装在客户机的终端安装在客户机的终端 u不同的不同的 runtime 许可是可选择的许可是可选择的uArcGIS Engine Developer Kitu为开发者而设计为开发者而设计u包括所有库和开发资源包括所有库和开发资源u所有选项都是已经激活所有选项都是已经激活 u许可通过软件授权许可通过软件授权ArcGIS Engine Developer Kit是什么是什么?u一个可嵌入式的一个可嵌入式的 GIS 组件用来创建客户应用程序组件用来创建客户应用程序u容易设计、配置、开发容易设计、配置、开发 u可扩展可扩展u可展开可展开u可分
13、发可分发u是面向开发者的产品,而不是最终用户是面向开发者的产品,而不是最终用户ArcEngine能创建哪种类型的应用程序能创建哪种类型的应用程序?u可以创建任何类型的独立的可以创建任何类型的独立的GIS应用程序应用程序u例如:独立,嵌入式的以及交叉平台的。例如:独立,嵌入式的以及交叉平台的。u可视可视 uMapping,drawing,selecting,editing,u不可视不可视 uUtility,updating,2.4 COMu连接一个软件模型和另一个软件模型的一种协议连接一个软件模型和另一个软件模型的一种协议u独立的一种语言独立的一种语言 u二进制规范二进制规范u运用界面或组件来开
14、发、配置程序模型运用界面或组件来开发、配置程序模型u客户端调用服务器并且服务给予响应客户端调用服务器并且服务给予响应u所有通讯是通过接口进行的所有通讯是通过接口进行的2.4 COM 类类uCOM类执行接口类执行接口u所有类执行所有类执行 IUnknownu管理所有对象的产生、终结管理所有对象的产生、终结u成员成员:QueryInterface,AddRef 和和 ReleaseuCoclasses 是可创建的是可创建的Public Sub mapName()Dim pMap As IMap 你能通过一个接口来创建一个实例你能通过一个接口来创建一个实例 Set pMap=New MapEnd S
15、ubIUnknownCOM 类与接口类与接口u类对象拥有一个或多个接口类对象拥有一个或多个接口 u接口是定义了一组方法和属性的逻辑关系接口是定义了一组方法和属性的逻辑关系u与对象的通信是通过接口来进行的与对象的通信是通过接口来进行的 RaceCarAccelerateBrakeFuel停靠站停靠站圈速度圈速度IRaceIDrive垃圾车垃圾车加速加速刹车刹车燃料燃料拾起拾起倾倒倾倒IGarbageIDrive2.4 COM 接口接口u定义一组逻辑的方法和属性定义一组逻辑的方法和属性u从从 IUnknown(default)继承继承uArcObjects 支持支持u客户化接口客户化接口u通过通过
16、 QueryInterface(QI)访问接口访问接口Public Sub mapName()Dim pMap As IMap Set pMap=New Map 通过定义的通过定义的pMap你可以有权使用其的你可以有权使用其的properties and methods MsgBox pMap.NameEnd Sub2.4 COM 外部连接的一些接口外部连接的一些接口u提供跟客户端来进行交换的一些事件的途径提供跟客户端来进行交换的一些事件的途径u通过连接对象并接收它外部接口通过连接对象并接收它外部接口u许多不同的事件在许多不同的事件在ArcEngine都可用都可用u例如例如:document
17、load events,map drawing events,editing events,Private WithEvents MxDocEvents As MxDocumentPrivate Sub setNewValues().Set MxDocEvents=pMxDoc.FocusMap Now can access eventsEnd SubPrivate Function MxDocument_NewDocument()As Boolean MsgBox New ArcMap documentEnd Function2.4 ArcEngine和和COM API(应用编程接口)应用编
18、程接口)u所有所有ArcEngine COM 类型都已在类型库里定义好类型都已在类型库里定义好u并且类型库是通过二进制文件来进行描述并且类型库是通过二进制文件来进行描述u类类:CLSIDs 和和ProgIDsu接口:接口:IIDsu常量和列举常量和列举u执行执行DLL和和 EXE文件文件u开发工具开发工具uArcGIS Developer Help(VB6 or VC+)uLibraryLocator,EOBrowser and OleView*ArcObjects C+*.dll files*COM Type Libraries*.olb files2.4 学习学习ArcEngine需要了解
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- arcengine 基本原理 对象 组件 模型

限制150内