1、ArcObjects地理信息系统二次开发 目录目录uGIS开发模式开发模式u第一章第一章 ArcObjects介绍介绍u第二章第二章 COM基础知识基础知识u第三章第三章 ArcObjects的使用的使用u第四章第四章 地图的基本操作编程地图的基本操作编程u第五章第五章 地图和图层地图和图层u第六章第六章 数据的获取和创建数据的获取和创建u第七章第七章 几何形体的操作几何形体的操作u第八章第八章 子集、选择集的使用子集、选择集的使用u第九章第九章 空间数据与属性数据的结合空间数据与属性数据的结合ArcObjects地理信息系统二次开发GIS开发模式开发模式ArcObjects地理信息系统二次开
2、发u开发模式开发模式u独立开发(底层开发)u单纯二次开发u集成二次开发ArcObjects地理信息系统二次开发独立开发独立开发u是指不依赖于任何是指不依赖于任何GIS工具软件,从空间数据的采集、编辑到工具软件,从空间数据的采集、编辑到数据的处理分析及结果输出,所有的算法都由开发者独立设数据的处理分析及结果输出,所有的算法都由开发者独立设计,然后选用某种程序设计语言,如计,然后选用某种程序设计语言,如Visual C+、Delphi、C+ Builder等,在一定的操作系统平台上编辑实现。等,在一定的操作系统平台上编辑实现。ArcObjects地理信息系统二次开发单纯二次开发单纯二次开发u指完全
3、借助于地理信息系统软件提供的二次开发语言进行应指完全借助于地理信息系统软件提供的二次开发语言进行应用系统开发。用系统开发。u商业化商业化GIS工具软件大多提供可供用户进行二次开发的宏语言,工具软件大多提供可供用户进行二次开发的宏语言,如如ESRI的的ArcView提供了提供了Avenue语言,语言,MapInfo的的MapInfo Professional提供了提供了MapBasic语言等。语言等。u用户利用这些宏语言,以原用户利用这些宏语言,以原GIS工具软件为开发平台,针对不工具软件为开发平台,针对不同应用对象,开发出自己的应用程序。同应用对象,开发出自己的应用程序。ArcObjects地
4、理信息系统二次开发集成二次开发集成二次开发u指利用专业指利用专业GIS工具软件或其提供的组件来实现工具软件或其提供的组件来实现GIS的基本功的基本功能,同时,采用通用软件开发工具,尤其是可视化开发工具,能,同时,采用通用软件开发工具,尤其是可视化开发工具,如如Visual Basic、Visual C+、Delphi、Power Builder等作等作为开发平台,进行二者的集成开发。为开发平台,进行二者的集成开发。u组件式开发方式组件式开发方式uCOM(Component Object Model)是组件之间相互接口的规范,其作用是使各种组件和应用软件能够用一种统一的标准方式进行交互。COM不
5、是一种语言,而是一种二进制标准。uGIS组件u组件GIS开发方法ArcObjects地理信息系统二次开发三种模式的分析和比较三种模式的分析和比较u独立开发难度大独立开发难度大u单纯二次开发受单纯二次开发受GIS工具提供的编程语言限制工具提供的编程语言限制u集成二次开发成为集成二次开发成为GIS应用开发的主流应用开发的主流u充分利用GIS工具软件完备的空间数据管理、分析功能u利用面向对象可视化语言的高效、方便等优点ArcObjects地理信息系统二次开发目前常见的组件目前常见的组件GIS软件软件uESRI推出组件产品推出组件产品 ArcObjectsuESRI推出基于推出基于COM的的GIS控件
6、控件 MapObjectsuMapInfo的的GIS控件控件 MapX u超图公司超图公司 SuperMap Objects u武汉吉奥武汉吉奥 GeoMap u开汉中地开汉中地 MapGIS ArcObjects地理信息系统二次开发第一章第一章 ArcObjects介绍介绍ArcObjects地理信息系统二次开发u什么是什么是ArcObjects(AO) AO是ESRI公司ArcGIS 家族中应用程序ArcMap, ArcCatalog 和 ArcScene的开发平台,它是基于Microsoft COM技术所构建的一系列COM组件集。 到ArcGIS8.3,AO还不是一个独立的应用产品, 是
7、依附在你的ArcGIS DeskTop产品中的软件开发包。 ArcGIS9.0,ESRI推出推出ArcEngine(AE),可以作为独立的产品进行),可以作为独立的产品进行发布和使用。发布和使用。ArcObjects地理信息系统二次开发uAO的特点的特点u采用面向对象思想、基于组件技术u支持广泛的空间数据格式u具有强大的GIS功能uAO的功能的功能1.强大的符号库系统 2.高效的地图显示功能3.强大、灵活的空间数据编辑功能 4. 强大的制图功能5.强大的空间分析功能 6.丰富的三维显示和分析功能7.强大的空间数据管理功能 ArcObjects地理信息系统二次开发uAO需要的技术基础需要的技术基
8、础u面向对象技术思想 uCOM技术 uAO各组件对象的层次组织和相互关系 u支持COM的各种开发工具及其环境(如VB、VC、DEPHI等) ArcObjects地理信息系统二次开发uAO开发资源开发资源uArcobjects Developer HelpwArcobjects Developer Kit s Object Model Diagrams - 包括所有的包括所有的PDF格式对象模型图格式对象模型图 s Samples - 包含所有示例工程文件的源代码包含所有示例工程文件的源代码 uArcObjects Online uExploring ArcObjects ArcObjects地理信息系统二次开发u相关网站相关网站uESRI公司 uESRI中国(北京)有限公司 www.esrichina- (富融公司)uGIS空间站 u地理信息系统论坛 ArcObjects地理信息系统二次开发案例介绍案例介绍u哈尔滨市林业局森林防火地理信息系统哈尔滨市林业局森林防火地理信息系统 u黑龙江黑河市扑火队伍跟踪监控指挥系统黑龙江黑河市扑火队伍跟踪监控指挥系统 u大兴安岭地区图强林业局地理信息系统大兴安岭地区图强林业局地理信息系统 ArcObjects地理信息系统二次开发