ArcGIS Engine开发之旅01---产品组成、逻辑体系结构
2016-08-02 09:12
411 查看
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才能运行。
面向开发人员的软件开发包(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才能运行。
相关文章推荐
- zabbix监控linux 以及监控mysql
- poj 1113(凸包)
- Cocos2d-JS 3.12版本Windows环境配置
- 【代码笔记】服务器检查浏览器是否关闭
- AngularJS基础 ng-init 指令简单示例
- SSH无密码登录设置
- java.lang.NoClassDefFoundError: com/sun/tools/internal/xjc/api/xjc????
- Juniper SSG-5 端口映射命令行设定
- Activity的启动模式及回退栈的概念
- csharp:asp.net Importing or Exporting Data from Worksheets using aspose cell
- js事件总结
- webstorm跑索引卡顿的问题
- 使用Golang简单实现七牛图片处理API
- docker常用指令以及解释
- 六西格玛管理法
- 前端知识概述
- Delphi在case语句中使用字符串
- 【Linux全面学习】15.配置sshd远程登录管理
- Dom
- Struts2学习之OGNL表达式原理(转载学习)