OMD的作用【转载】
1.OMD的作用
OMD(对象模型图)是基于OMT(Object Modeling Technique)的表示方法,先来看看OMD能帮我们做些什么?
1. 该类支持哪些接口;
2. 完成任务需要哪些对象;
3. 如何使用该类的对象;
4. 是否可以直接实例化类;
5. 接口有哪些方法和属性;
6. 是否有其它类也支持该接口;
7. 对象间的关系
2.OMD符号解释
在OMD中有三类class,分别是抽象类(AbstractClass)、组件类(CoClass)和普通类
(Class)。 抽象类的主要目的是为它的子类定义公共接口,一个抽象类将把它的部分或全部实现延迟到子类中,因此,一个抽象类不能被实例化。一
个组件类对象可以被直接创建,普通类对象虽然不能直接创建,但它可以可以作为其它类的一个属性或者从其它类的实例化来创建。AO
中的Dataset或Geometry
classes是抽象类的示例,一个Geometry类型对象不能被创建,但是一个Polyline可以被创建。这个Polyl
ine对象实际上在类的基础上实现了Geometry中定义的接口,因此在基类对象中被定义的接口可以从coclass来访问。
在OMD中的
关系类型主要有类型继承(Type
inheritance)、创建(Instantiation)、组成(Composition)以及关联(Associati
ons)等。类型继承我们在COM一章过提到过,实际上就是继承完全继承了超类的接口,这点可以利用AO对象浏览器工具清楚的看
到,而组成关系指的是对象间的主次关系,也就是说主体的生命存在与否决定着次体的存在与否。
3.AO的组织划分
ESRI对整个AO进行了结构的组织分割,按照不同的应用领域 可以找到相应的PDF格式的OMD。从AO开发帮助中我们可以发现划分为以下的几个子系统:
1. 3D Analyst Extension ---用于3D可视化和表面建模的组件对象;
2. Application Framework ---让开发者在ArcMap和ArcCatalong中通过程序来定制用户界面;
3. ArcCatalog --- 能够让开发者扩展数据对象模型并集成定制对象和视图到ArcCatalog应用框架中;.
4. ArcMap --- 提供了ArcMap应用程序的核心功能,用于操作和显示地图文档;
5. ArcMap Editor--- 包括了对象编辑器扩展组件对象,要做编辑开发来这吧;
6. Display --- GIS的一个重要应用就是数据表现,对国内的许多最终用户更是热衷于此,利用这里包含的对象可以完成诸如地图符号显示、图形编辑 反馈轨迹、坐标转换和屏幕控制等功能;
7. Geocoding --- 主要用于创建和管理地理编码服务等;
8. Geodatabase--- AO开发中一个不可或缺,毕竟GIS的应用都是围绕数据展开的,所以有关的GIS数据创建、加载、管理和存储等都是通过这里的对 象进行的;
9. Geometry--- 不管是要素还是图形,涉及到空间信息的获取和应用来这儿找吧;
10. IMS ---提供了连接到ArcIMS服务器并访问ArcIMS图象和要素服务的功能;
11. NetWork--- 提供了网络创建、管理和完成分析操作等功能,打算定制和开发特定网络应用可以利用NetWork对象;
12. OutPut ---有入就有出,如果想把制作好的地图输出怎么办,通过这里提供的对象来完成吧;
13. Raster --- 用于访问和管理栅格数据的的AO对象;
14. Spatial Reference--- 用于完成空间参考的设置;
15.StreetMap USA Extension---这个和国内的用户关系不大。