一、Arcgis engine-基础知识

OMD模型图

OMD可以帮助程序员来了解类与类之间的关系,例如如何从一个类到另外一个类,选择正确的接口,获取需要的属性和方法等。在成功安装ArcEngine后,该pdf文件位于ArcEngine安装目录的“…\DeveloperKit10.0\Diagrams”。

类的类型
ArcObjects中类有三种类型:抽象类(Abstract Class)、组件类(CoClass)和普通类(Class).
抽象类不能用于产生一个新的对象,但是可以用于定义一个子类,具体使用见实例详解C#抽象类及其用法
组件类是一个可以直接创建对象实例的类,它的实例对象不依赖其他对象的存在而存在,其生存周期也不用其它的对象管理,用法示例:

IMap pMap=new MapClass();

普通类不能够直接产生一对象,但是它可以通过其它的普通类或者组件类的方法产生,与组件类的实例化不同,它的创建不是使用new关键字实现的。如Workspace是一个普通类,这意味着开发人员不能直接新建它;为了获得一个工作空间,需要用到WorkspaceFactory对象来创建或打开一个Workspace.

IWorkspaceFactroy workspaceFactroy=new FileGDBWorkspaceFatoryClass();
workspaceFactory.openFromFile(fileName,0);

类与类之间的关系

  1. 依赖关系
    依赖关系表明一个对象有办法产生另一个对象。如workspaceFactroy有一个open方法可以打开一个Workspace对象,Workspace依赖于workspaceFactroy,相应地Workspace的生命周期由workspaceFactroy决定。

    OMD中虚线箭头即表示类结构的依赖关系,箭头终点依赖于箭头起点

  2. 关联关系
    两个对象是松散的关联关系,可以从一个类的对象访问到另外一个类的对象。

    OMD中用带*的直线表示类结构的关联关系

  3. 组合关系
    两个对象属于紧密的组合关系。例如Map对象由多个Layer组成。

    OMD中用上述符号表示类结构的关联关系

  4. 类型继承
    在ArcObjects中,几何对象模型中几何对象之间存在继承关系、Geodatabase中数据集之间的继承关系等。
    类之间的继承可看成是类功能的扩展,即子类会在父类的属性和行为的基础上增加自己特有的行为和属性。

    OMD中用上述符号表示类结构的类型继承关系

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值