- 1、本文档共44页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
空间数据库建库实例--基于Geodatabase的空间数据库
空间数据库建库实例--基于Geodatabase的空间数据库 地理信息系统设计与应用 学习内容 熟悉ArcGIS开发方法 掌握ArcObjects编程技术 应用ArcEngine设计小型应用系统 为什么要ArcGIS编程? ArcGIS是主流的GIS平台,用户多,应用广; ArcGIS基础软件不能满足行业应用需要的特殊功能和要求。 完全从底层开发一套GIS软件,难度大,不适合一般的行业应用,需要在ArcGIS基础上根据实际需要扩充功能模块。 ArcGIS开发方式 1. VBA方式 2. 定制DLL功能组件方式(COM组件) 3. 独立开发方式 VBA方式 VBA不是一个独立应用程序,它是嵌在ArcGIS软件中的一种工业化开发工具。 定制DLL功能组件方式 在可视化编程环境下,以DLL形式封装特功能组件,然后在ArcGIS软件中使用功能组件。 独立开发方式 在可视化编程环境下,利用AO提供的控件,相对地从底层开发GIS应用系统。 开发方式对比 不论何种开发方式,开发者都要与ArcObjects(AO)打交道。 ArcGIS编程就是AO编程。 1.什么是AO? 2.如何获取AO? 什么是AO AO是ESRI公司是基于Microsoft? COM技术所构建的一系列COM组件集; AO是ArcGIS? 系列软件的基础 AO已经提供了许多底层的基本功能,开发者的任务是按照应用需求将这些底层功能组装集合成一个更强大的COM对象(功能组件),最终构建一个GIS应用系统。 如何获取AO 对于ArcGIS 8.x平台: AO还不是一个独立的应用产品, 是依附在ArcGIS DeskTop产品中的软件开发包。 对于ArcGIS 9.x平台: AO可以是一个独立的应用产品(ArcGIS Engine),类似MapObjects; 同样可以在ArcGIS DeskTop产品中的软件开发包中获取,但级别不一样。 AOMO 都是ESRI公司的产品; 都是提供基本GIS功能的COM组件; AO功能远远比MO强大,但更为复杂。 MO:3个控件,45个编程对象 AO:11个控件,1500多个编程对象 AO编程技术基础 1.COM技术;2.AO各组件对象的层次组织和相互关系;3.支持COM的各种开发工具及其环境(如VB、 VC++、 C#、.NET 、JAVA等) 。 AO开发资源 1.《ArcObjects Developer Help》,AO最好 开发帮助系统,就像MSDN 2.《Arcobjects Developer Kit 》,提供丰富的示例代码 3.《ArcObjects Online》 ,ESRI公司在线帮助系统 4.《Exploring ArcObjects》 , AO技术文档,对AO主要对象详细介绍,而且有大量的示例 AO编程基本知识 AO基本组成; AO中常用控件; AO对象模型图; AO工作机理。 AO基本组成 几个常用的控件 当采用独立开发方式,通过AO提供的系列控件可以极大提高系统开发效率. 根据需要选择不同的控件,结合其他AO组件库可以完成负责系统开发工作. 常用的几个控件: MapControl SceneControl PageLayeroutControl ToolBarControl TOCControl MapControl控件 SceneControl PageLayerout控件 ToolBarControl TOCControl 理解AO对象模型图 AO对象模型图图中3种类型的类,即: 抽象类(abstract class):不能用来创建新对象,把它的部分或全部实现延迟到子类中 . 例如:Geometry classes是抽象类,对象不能被创建,但是一个Polyline可以被创建。 可实例化类(class):不能直接创建对象,但这种类对象可以通过其他类对象的方法或属性来创建; 可创建类(coclass):对象可以直接被创建或实例化的类. 开发过程中常操作的class和coclass 对象模型中符号 AO中类与类的关系 关联关系 关联表示两个类之间存在某种语义上的联系,可以从一个类的对象访问到另一个对象。 继承关系 继承定义一般元素和特殊元素间的关系 实例化 实例化指定对象有方法能够创建另外一个类的对象 组合关系 组合表示类之间是整体拥有部分的关系,整体与部分共存. VBA开发方式 如何在ArcGIS (ArcMap为例)的VBA环境中编程? ArcGIS中VBA编程的方法有两
文档评论(0)