原文 ArcGIS Engine开发之旅01---产品组成、逻辑体系结构
ArcGIS Engine 由两个产品组成:
面向开发人员的软件开发包(ArcGIS Engine Developer kit)
面向最终用户的运行时(ArcGIS Engine Runtime)
ArcGIS Engine 开发工具包是一个基于组件的软件开发产品,可用于构建自定义GIS 和制图应用软件。它并不是一个终端用户产品,而是软件开发人员的工具包,支持四种开发环境(C++, COM, .NET,以及Java),适于为Windows、UNIX 或Linux 用户构建基础制图和综合动态GIS 应用软件。
ArcGIS Engine Runtime 是一个使终端用户软件能够运行的核心ArcObjects 组件产品,并且将被安装在每一台运行ArcGIS Engine 应用程序的计算机上。
ArcGIS Engine的逻辑体系结构:
◆ Base Services
包含了ArcEngine中最核心的ArcObjects组件,几乎所有的GIS组件需要调用它们,如Geometry和Display等。
◆ Data Access
包含了访问矢量或栅格数据的GeoDatabase所有的接口和类组件。
◆ Map Presentation
包含了GIS 应用程序用于数据显示、数据符号化、要素标注和专题图制作等需要的接口和类组件。
◆ Develper Components
包含了进行快速开发所需要的全部可视化控件,如MapControl、PageLayoutControl、SceneControl、GlobeControl、TOCControl、ToolbarControl、SymbologyControl和LicensenControl控件等,除了这些,该库还包括大量可以有ToolbarControl调用的内置commands、tools、Menus,它们可以极大地简化二次开发工作。
◆ Extensions
在图中我们可看出,ArcEngine的开发体系是一条纵线,功能丰富,层次清晰。最上层的Extensions包含了许多高级开发功能,如GeoDatabase Update、空间分析、三维分析、网络分析、Schematics逻辑示意图以及数据互操作等。ArcEngine标准版并不包含这些ArcObjects许可,他们只能作为扩展存在,需要特定的License才能运行。