MapObjects(MO)
MO
是
ESRI
推出的一个可嵌入的制图与地理信息系统组件集合,它包括一个
OLE
控
件(
OCX
)并提供了
40
个
OLE
对象,可以插入到
Visual
Basic
,
Visual C++
等支持工业标
准的
Windows
开发环境中调用。
功能:
显示一张多图层地图
(
道路,河流,边界
)
。
放大,缩小,漫游。
生成、绘制图形元素,如点,线,圆,多边形。
绘制图形化文字。
可以用点击选择不同的对象(点、线、面)。
通过线,方框,区域,多边形,圆来拾取物体。
可以选择对象的指定位置。
通过
SQL
描述来选择物体。
对选取物体进行基本统计。
对所选地图元素的属性进行更新,查询。
绘制专题图。
用特殊方法渲染图层,如数值、类别、密度、图表、事件或
Z
值。
从航片或卫星图片上截取图像。
动态显示实时或系列时间组数据。
在图上标注地址或定位。
把数据投影到不同的坐标下。
ArcObeject(AO)
AO
是
ESRI
公司
ArcGIS
家族中应用程序的开发平台,它是基于
Microsoft
COM
技术
所构建的一系列
COM
组件集。
应该澄清的是到目前为止,
AO
还不是一个独立的应用产品
,
是
依附在你的
ArcGIS Desktop
产品中的软件开发包。
功能:
强大的符号库系统;
地理要素的交互式显示、查询检索、编辑和分析;
根据属性信息创建并分析各种专题图和统计报表;
空间查询、空间分析功能;
高质量的制图和地图输出功能
(PageLayoutControl)
;
允许用户为其他图像格式提供支持,具备基本的图像处理功能;
矢量数据与栅格数据的叠加;
空间数据管理和维护,超强的编辑功能,单用户环境下支持短事务的对象编辑及其撤销
/
重
复,支持与逻辑网络关联的网络元素的编辑和分析;
丰富的三维显示
(SceneViewer)
和三维分析功能;
对动态目标的追踪功能;
特点:
采用面向对象思想,丰富灵活的空间特征和先进合理的数据结构;
基于组件技术,技术的先进性与开放性;
支持广泛的空间数据格式;
具有强大的
GIS
功能;
ArcObjects
是基于组件技术开发出来的功能强大的组件式
GIS
开发产品,它具有庞大的体
系结构。
ArcObjects
共提供了
11
个控件、
11
大类
25
个组件库、
1500
多个类、
1600
多个接
口。其中常见的控件包括
MapControl
、
PageLayoutControl
和
Scene
Viewer
;而
11
大类组
件库是根据具体
ArcGIS
的体系结构和功能来划分的。
ArcGIS Engine
(
AE
)
AE
是一个创建定制的
GIS
桌面应用程序的开发产品。
ArcGIS
Engine
包括构建
ArcGIS
产品
ArcView, ArcEditor, ArcInfo,
和
ArcGIS Server.
的所有核心组件。使用
ArcGIS
Engine
可以创建独立界面版本
(stand-alone)
的应用程序,或者对现有的应用程序进行扩
展,为
GIS
和非
GIS
用户提供专门的空间解决方案。
ArcGIS
Engine
提供了
COM
、
.NET
和
C++
的应用程序编程接口
(API)
。
这些编程接口不仅包括了详细的文档,
还包括一系列高层次
的组件,使得临时的编程人员也能够轻易的创建
ArcGIS
应用程序。
特点:
标准的
GIS
框架和用于建立
ArcGIS
家族的
ArcObjects
。
节省成本的配置,每台电脑只需要一个
ArcGIS Engine Runtime
或者
ArcGIS
桌面许可
(license)
。
可用于
ActiveX
、
.NET
和
Java
的开发者控件,以简化应用程序的开发。
多种标准开发语言的选择,包括
COM, .NET, Java,
和
C++
。
丰富的开发者资源,包括对象模型、工具集、范例和文档。
三者的联系:
它们都是
ESRI
公司开发的,
用于空间地理信息程序开发操作的组建,
都具备了基本的
地图操作功能,均能够满足简单的小型的系统开发。
AE
包括核心
AO
的功能,其是对
AO
中
的大部分接口、类、库进行封装所构成嵌入式组件。
AE
中的组件接口、方法、属性与
AO
是
相同的。
三者的区别:
1 .
功能完善程度不同:三者当中
AO
最为完善,包括了所有的类库,其中有
ArcMap
、
ArcMapUI
、
ArcCatalog
、
ArcCatalogUI
等组件库。
而
AE
为它的一个缩减,
AE
版本的控件只
有
MapControl
和
PageLayoutControl
两个,所以使用
AE
开发的软件,在
AO
环境中使用没
有问题,但是
AO
开发的程序,如果使用的组件库不被包含在
AE
中,就无法使用,比如
IIdentifyDialog
对象,就是只有在
AO
中才能使用。
MO
功能最简单,主要面向小型的系统
开发如地图浏览,查询系统等等,或结合
MIS
系统运行。
2.
开发环境要求不同。基于
AO
的开发需要安装
ArcGIS
Desktop
全套软件,
而
AE
是独立的
嵌入式开发平台,无须
ArcGIS Desktop
支持。
MO
也无须
ArcGIS
平台支持
3.
构建成本。
AO
最为昂贵,
AE
次之,
MO
最低廉。