标准规范下载简介
Arcgis Engine白皮书.pdfDelivering Custom GlS Applications
DeliveringCustomGlSApplications With ArcGiS Engine
GB/T 42097-2022 地上石油储(备)库完整性管理规范nitePaper:February
使用ArcGIS Engine发布自定义GIS应用软件ESRI白皮书目录页码简介为何对发布自定义GIS应用软件感兴趣?高效GIS开发的解决方案..ArcGIS开发概述ArcGISEngine简介为何使用ArcGISEngine?ArcGISEngine的功能ArcGISEngine的主要特征..6ArcGISEngine开发工具包用ArcGISEngine进行开发框架/结构ArcGISEngine对象库System库.SystemUI库Geometry库Display库.Server库.9Output库Geodatabase库GISClient库DataSourcesFile库DataSourcesGDB库.10GeoDatabaseDistributed库DataSourcesOleDB库....10DataSourcesRaster库..10Carto库10Location库.10NetworkAnalysis库.1
Controls库10GeoAnalyst库3DAnalyst库...10GlobeCore库10SpatialAnalyst库..10ArcGISEngine工具集.10地图控制器或页面布局中使用的要素选择工具..10地图控制器或页面布局中使用的图形元素工具..11地图控制器或页面布局中使用的地图导航工具.11页面布局中使用的页面布局工具1 1用ArcGISEngine构建应用软件.12ArcGIS Engine Runtime配置与授权ArcGISEngine应用软件.17配置ArcGISEngineRuntime17配置方法..18授权ArcGISEngineRuntime18ArcGIS开发资源18ArcGIS开发人员帮助系统,..18ArcGIS开发人员丛书.18ArcGIS开发在线...19ESRI支持中心19练习19结论19i
用ArcGISEngine发布自定义GIS应用软件
为何对发布自定义 GIS应用软件感兴 趣?
高效GIS开发的 解决方案
当面对海量的原始信息时,组织机构应充分意识到地理分析和 空间可视化的重要性,因为这可以提高机构内部的运行效率及 决策制定。可以称之为商业智能、分析应用软件或决策支持, 知识分子可从软件应用中获益,因为这些软件可为迅速而准确 估测形势和行为提供信息支持。有许多潜在的增强型GIS应用 软件用户,他们不是GIS专业人员;而且没有经过系统学习, 不会有效地利用市场上可得到的综合工具。为了向非GIS专业 的用户提供空间分析方案,开发人员需要具有构建领域专用且 易于使用的应用软件的能力,该软件需将广泛应用的GIS技术 与友好用户的经验结合起来。这些软件如果从头开始构建,将 是一项繁几的开发工作,会很耗费时间,并且成本不菲。 对于繁几的GIS开发工作而言,理想的解决方案是一个基于组 件的开发框架的实用性,且该框架允许解决方案提供商或机构 内部开发人员快速构建行业专用GIS应用软件。一个GIS开发 框架应提供应用软件所需的必要的空间分析功能,并充许软件 开发人员集中精力构建软件的特定逻辑。ESRI公司的ArcGIS Engine就是这样一个GIS框架,它是为响应ESRI用户的请求而 创建的,可以把丰富的ArcGIS技术按产品进行分类,并将其空 间分析功能嵌入新的或已有应用软件中。 这本白皮书主要是对ArcGISEngine产品的概述,将会引起编程 人员和项目管理人员的特别注意,因为他们想要将制图与GIS 功能性嵌入新的或已有的自定义应用软件中,并可能在一个跨 平台环境中,以一种适宜成本的方式来配置这些应用软件。 ArcGIS是一组集成家庭式的GIS软件产品,可在单项工程、工 作组以及企业级项目中用于发布完善的、可升级的GIS系统。 它是基于一个可共享的GIS组件一一ArcObjects的公用库来 构建的。ArcGIS包括以下几个主要组成部分:
配置/定制ArcGISDesktop产品; 扩展ArcGIS结构与数据模型; 使用ArcGISEngine在其他应用软件中嵌入制图和GIS功能; 使用ArcGISEngine构建和配置自定义桌面应用程序; 使用ArcGlsServer构建网络服务和应用程序
使用ArcGISEngine构建的应用软件可以授权并分配给终端用户。ArcGISEngine由两个产品组成:构建软件所用的开发工具包以及使已完成的应用程序能够运行的可再发布的Runtime(运行时环境)。ArcGISEngine开发工具包是一个基于组件的软件开发产品,可用于构建自定义GIS和制图应用软件。它并不是一个终端用户产品,而是软件开发人员的工具包,适于为Windows、UNIX或Linux用户构建基础制图和综合动态GIS应用软件。ArcGISEngineRuntime是一个使终端用户软件能够运行的核心ArcObjects组件产品,并且将被安装在每一台运行ArcGISEngine应用程序的计算机上。为何使用ArcGIS在熟悉的软件程序中,许多用户需要集中式的行业专用GIS方Engine ?法,他们的需求要比一般GIS产品要少得多,但他们却可能需要复杂的GIS逻辑方法。ArcGISEngine就提供了一种相对于般GIS软件的选择方案,以防用户需要定制GIS方法。ArcGISEngine可用于:在自定义应用软件中嵌入GIS逻辑;有效构建和配置GIS应用软件;从简单的应用软件中提供高级GIS逻辑方法;在其他应用软件中嵌入GIS逻辑和制图;使用C++或Java构建跨平台应用软件。
作为一名开发人员,可以在用ArcGISEngine开发工具包构建 的程序中实现以下功能以及许多其他功能: ■显示具有多个地图图层(如公路,河流和边界)的地图。 ■漫游与缩放地图。 ■通过单击来识别地图上的要素。 ■搜索地图上的要素。 ■显示字段值的文本标注。 ■绘制来自于航空照片或卫星影像的图像。 ■绘制图形要素(如点、线、圆以及多边形)。 ■绘制描述性文本。 ■沿线或在方框、区域、多边形及圆内选择要素。 ■在其它元素的特定距离内选择要素。 ■使用SQL表达式查找并选择要素。 ■使用主题方法为要素着色(如值映射图、分类图和点密度 图)。 ■动态显示即时或时间序列数据。 ■根据提供的街道地址或交点在地图上查找位置。 ■转换地图数据的坐标系统。 ■执行形状的几何操作,来创建缓冲区;计算差值;或查找形 状的交集,联合或反转交集。 ■操作形状或旋转地图。 ■创建和更新几何特征及其属性。 ■交互操作个人地理数据库与主地理数据库。 ArcelsEnaine非常适合主构建高 基础制图
在VisualBasic中构建ArcGISEngine房地产应用软件ArcGIS Engine标准的GIS框架:ArcGISEngine为开发GIS应用软件提供了标的主要特征准框架。世界上最受欢迎的软件产品(ArcView,ArcEditor和ArcInfo)就是由这套相同的软件对象构建的。ArcGISEngine既耐用,又具有可扩展性,而且其丰富的功能允许开发人员集中于解决机构问题,而不是从头开始构建GIS功能。成本适宜的配置:ArcGISEngineRuntime在每台计算机上都可得到授权。这允许多个ArcGIS应用软件在同一台计算机上运行,因此只需要一个单用户运行时(runtime)授权成本。开发控制器:ArcGISEngine提供了一套公用的开发控制器,它允许开发人员轻松配置高性能的具有共同外形和感觉的应用软件。一个普通用户的经验说明这可以缩短用户学习时所走的弯路,因而可以迅速在开发应用软件时得到回报。跨平台功能:ArcGISEngine及其所有相关对象与控制器可用于多种平台,包括WindowS、Linux和UNIX。自定义GIS应用软件将适用于标准计算环境;而不需要在目前的计算基础结构中改变或添加运行环境。跨开发语言ArcGISEngine支持多种开发语言,包括COM,NET,Java以及C++等。这就允许使用大量的工具对对象进行编程,而且编程人员不需要学习一门新的或专用的语言。6
ArcGIS的扩展功能:ArcGISEngine开发工具包包括以下扩展功能,如更新和创建多用户地理数据库,还有ArcGIS3D分析,ArcGIS空间分析以及ArcGISStreetMap产品等。ArcGIS Engine开发资源:连同对象模型图和范例编码,ArcGISEngine开发工开发工具包具包提供了一个帮助系统来帮助开发人员进行学习。此外,它还包含了多个开发工具和应用工具来帮助开发。ArcGISEngine开发工具包是一套制图组件,它使程序员能够向现有应用软件中添加动态制图和GIS功能,或者构建自定义制图与GIS解决方案。使用ArcGISEngine开发工具包,编程人员在创建制图与空间分析的用户化界面时便拥有了空前的灵活性。可以使用几种工业标准的编程语言来创建特定的应用软件,或者将ArcGISEngine组件与其他软件组件相结合,来利用地图与用户收集管理的信息的相互关系。ArcGisDeveloperHelpArcGISEngine开发工具包包含了所有的开发资源,以支持综合开发任务。连同每部分的对象模型图和范例,ArcGISEngine为几种应用程序接口(APIs)(COM、Java、.NET及C++)提供了一个完整的帮助系统。ArcGISEngine开发工具包并不是一种终端用户产品。它确实是为开发应用软件的人而设计的。开发人员可以以ArcGISEngine为基础构建应用程序,并将那些程序发送给终端用户。ArcGISEngine的一个重要特征就是地图显示既可以是应用软件的附带元素,也可以是中心元素。该特征使ArcGlSEngine特别适合于纵向市场应用软件。例如,如果应用程序的核心是用于出租的商业房产信息的数据库,那么当终端用户对数据库执行查询时,该程序可以以地图的形式高亮显示感兴趣的商业位置。进一步说,应用程序应该能够显示附近区域的建筑物、地板设计、停车场以及人口统计信息等。7
ArcGISEngine开发工具包不仅提供了访问ArcObjects组件集的方法,而且还包含了几种用于创建用户高质量制图界面的可视化开发控制器。ArcGISEngine包含了以下辅助应用程序开发的可视化组件:地图控制器;页面布局控制器;工具条控制器;阅读程序控制器;球体控制器;场景控制器;内容表控制器;工具条上命令集和工具控制器。地图控制器页面布局控制器球体控制器场景控制器ArcGISEngine可视化控制器实例作为ActiveX控制器JavaBeansNETWidows控制器以及Motifwidgets,这些可视化组件均可加以利用。ArcGISEngine开发工具包控制器可以与其他控制器和组件相结合,来创建个性化的用户界面、显示和报表。8
用ArcGISEngine 进行开发
System库 System库是ArcGIS结构中最低级的对象库。该库包含了揭示 ArcGIS中其他对象库所使用的服务的组件。 SystemUI库 SystemUI库主要定义了ArcGIS系统中所使用的用户界面组件的 类型。 Geometry库 Geometry库包含了核心几何对象,如点、多边形、线及其几何 类型和定义等。 Display库 Display库包含了支持向输出装置绘制符号体系的组件。 Server库 Server库包含了用于获取到ArcGISServer的连接的对象。该 连接通过本库中的对象进行管理。 output库 Output库包含了生成输出所必需的对象,通常是从地图或页面 布局输出到打印机、绘图仪,或者导出到文件中。 Geodatabase库 Geodatabase库包含了所有与数据访问相关的定义的类型。 GISclient库 GISCIient库包含了操作远程GIS服务的对象。ArcIMS或ArcGIS Server都可以提供这些服务。 ataSourcesFile库 DataSourcesFile库包含了适用于地理数据库应用程序接口 (APIs)所支持的量数据格式的工作空间工厂和工作空间。
在屏幕上选择要素: 清除选中要素; 缩放至选中要素。
上述构建的用户界面视图除了上述应用软件可以在一个”球体”背景中对数据进行制图外,这里还有其他几个类型的应用软件范例,它们均受益于ArcGISEngine技术。13
城市政府部门可能想构建一系列的以地块评价为中心的应用软件,能够从GIS数据库中获取信息,并将其和其他重要单位的工作集成在一起,如许可证、税收、规划评审等等。ArcGISEngine中构建的地块评价应用软件14
ArcGISEngine组件可以嵌入到MicrosoftWord文档中,来帮助在文本与表格信息和空间数据之间建立联系。LEMicrosoftWord中的故障单报表与嵌入的ArcGISEngine地图15
ArcGIS Engine所有使用ArcGISEngine开发工具包构建的应用软件都将需要RuntimeArcGISEngineRuntime,或者适当级别的ArcGISDesktop产品(ArcView,ArcEditor,orArclnfo)的授权才能成功运行。Eagin构成ArcGIsEngine应用软件的交付项目组件标准ArcGISEngineRuntime提供了所有ArcGiS产品的核心功能。随同三维可视化、空间分析以及详细的美国街道数据等高级功能,它可以通过多用户地理数据库的完全读写权利得到增强。ArcGIS EngineStandardFunctionalityMapinteractionMapcreationMap analysisData creation (shapefileandpersondl geodatabaie)DevelopercontrolsDevelopertechnologiesGeodatabaseUpdateRuntimeOptionDatacreationDatamanagementOtherArcGiSEngineRuntimeOptionsSpatial+3DStreetMapUSA16
通过ArcSDE访问数据库管理系统(DBMS),ArcGISEngine开 发人员能够构建和配置关于编辑和维护多用户地理数据库的解 决方案。这包含了地理数据库版本管理中所必需的访问 ArcObjects组件的权利。
ArcGISEngineRuntime的空间选项提供了一组强大的功能,允 许用户创建、查询和分析基于像元的栅格数据。使用ArcGIS EngineRuntime的空间选项,用户可以获得数据信息,识别空 间关系,查找适宜位置,以及计算从一点移动到另一点所需的 累积成本。
T/CAS587-2022 城镇排水管道检测与非开挖修复安全文明施工规范.pdfArcGISEngineRuntime的3D选项使用户能够创建在三维或球 体空间中进行数据可视化的应用软件。该选项补充了ArcGIS Engine的组件:可以通过多个视点来检验表面;从一选中位置 确定可见范围
ArcGiSEngineRuntime还可以通过StreetMapUSA选项得到折 展。该选项提供了美国标准街道制图与地址匹配。StreetMap图 层可以自动管理、标注和绘制要素,如地方边界、街道、公园 以及水体等。所有数据均来自于光盘压缩文件。 ArcGISEngine应用软件的终端用户或开发人员均可以配置一个 软件授权文件,通过它来控制上述选项功能的可用性
ArcGISEngine应用软件需要将ArcGISEngineRuntime软件安 装在终端用户的机器上。为确保ArcGISEngineRuntime已安装 开发人员可以让用户直接运行ArcGISEngineRuntime的安装程 序并安装授权码(licensekey),或者将ArcGISEngineRuntime 安装程序包含在应用软件的安装程序组里。 安装ArcGISEngineRuntime可通过多种方法在应用软件的安装 过程中完成其详细介绍参阅《ArcGISEngineDeveloperGuide》。
T/SLEA 0061.1-2022 实验室用通风机技术规范 第1部分:玻璃钢防腐离心通风机.pdf授权ArcGISEngine Runtime
置方法 配置ArcGISEngineRuntime有两种值得推荐的方法: 直接从光盘安装ArcGISEngineRuntime的安装程序。 ArcGISEngineRuntime安装程序可以在应用软件的光盘上 重新分配。开发人员可以复制ArcGISEngineRuntime光 盘内容并创建附加的光盘;或者与ESRI联系,获得附加的 ArcGISEngineRuntime光盘。 ■将ArcGISEngineRuntime安装程序并入应用软件的安装 程序组里运行。ArcGISEngine可以在没有用户界面的情况 下进行安装,即通过WindowsInstaller命令行参数来运 行安装程序。这种方法使终端用户产品的安装简单化。
ArcGis系统的每一部分(Desktop,Engine,andServer)都有 个开发指南,来帮助开发人员从头学习ArcObjects及其各自 支持的APl。《ArcGISEngineDeveloperGuide》一书为开发 人员提供了基于ArcGISEngine来创建和配置自定义软件的信 息,以及不同的开发控制器和组件的信息。《ArcGISDesktop DeveloperGuide》一书则提供了如何定制或扩展ArcGIS桌面 应用软件(如ArcMap、ArcCatalog)的信息。