【ArcGISProSDK】初识

简介

ArcGIS Pro SDK 提供四种主要的可扩展性模式:加载项、托管配置、插件数据源和 CoreHost 应用程序。

加载项

加载项是使用**.NET** 以及 Esri 的桌面应用程序标记语言 (DAML (一种由 Esri 创建的 XML 语言)创作的。DAML 描述自定义项 ;.NET 类提供自定义行为。ArcGIS Pro 软件开发工具包 (SDK) 包括一个加载项向导,该向导与 Microsoft Visual Studio 集成以简化开发。

DAML介绍

ProConcepts 框架 ·Esri/arcgis-pro-sdk 维基 ·GitHub的

配置

配置类似于加载项,但提供了扩展 ArcGIS Pro UI 的其他方法。他们可以帮助您设计更贴近您组织品牌和工作流的 ArcGIS Pro 版本。

创建

各模块文件对比

API

核心

核心程序集位于 {ArcGIS Pro 安装文件夹}\bin 中。

程序集 描述
ArcGIS.Core.dll 提供 CIM、地理数据库、几何图形和公共设施网络 API。 补充:ArcGIS CIM(制图信息模型)是Esri公司开发的一个用于地图内容规范的系统 ,主要用于在读取或写入工程时保留各种工程组件描述信息的方式。CIM可以用于ArcGIS应用程序和API中,包括地图、场景、布局、图层、符号和样式等。
ArcGIS.CoreHost.dll 提供 Host.Initialize 以初始化 ArcGIS.Core.dll 以供独立使用。 **补充:**主要用于在独立应用程序中初始化和使用 ArcGIS 的核心功能。根据证据,这个库通常用于开发不需要集成到 ArcGIS Pro 框架中的独立应用程序。这意味着开发者可以在不依赖 ArcGIS Pro 环境的情况下,利用 ArcGIS 的地理数据库和图形操作接口进行开发。
ArcGIS.Desktop.Framework.dll 提供应用程序框架以包括外接程序协定、DAML 支持和基类。每个加载项都必须引用此程序集。
ESRI.ArcGIS.ItemIndex.dll 提供创建和使用自定义项的功能。

扩展

ArcGIS Pro 中的主要子系统被组织成称为扩展模块的单元。扩展程序集位于 {ArcGIS Pro 安装文件夹}\bin\Extensions 文件夹中其自己的子文件夹中。扩展子文件夹名称根据它们所代表的功能单元进行逻辑命名。例如,Mapping、Editing、Layout 等。

程序集 描述
ArcGIS.Desktop.Catalog.dll 提供对工程内容项(地图项、布局项、样式项、文件夹项等)的访问
ArcGIS.Desktop.Core.dll 提供创建和管理工程 的功能、访问 与当前工程关联的事件以及执行地理处理工具的功能。
ArcGIS.Desktop.DataReviewer.dll **官方:**提供在工程中建立和管理 Reviewer 结果、会话和批处理作业的功能。 自查:ArcGIS Data Reviewer 提供了一个完整的系统来自动化和简化数据质量管理过程,包括计划和按固定时间间隔验证数据的服务。该扩展模块遵循标准的维护周期,并会继续增强和扩展。
ArcGIS.Desktop.Editing.dll 提供对自定义编辑工具实施所需的编辑环境和核心编辑功能的访问权限。
ArcGIS.Desktop.Extensions.dll 为其他 ArcGIS Pro 类提供扩展模块方法。为自定义地图工具提供基类。
ArcGIS.Desktop.Geoprocessing.dll 提供对存储在工程中的地理处理历史项目的访问。(注:添加对 ArcGIS.Desktop.Core.dll 以执行地理处理工具的引用。
ArcGIS.Desktop.KnowledgeGraph.dll **官方:**提供对地图和链接图表中 KnowledgeGraph 的访问。 自查:是一个与 ArcGIS 知识图谱相关的组件。这个文件可能用于支持在 ArcGIS Pro 中创建、编辑和管理知识图谱服务的功能。该类可能包含用于操作和管理知识图谱的数据结构和方法。
ArcGIS.Desktop.Layouts.dll 提供用于处理布局上的元素和导出为各种图像格式的功能。
ArcGIS.Desktop.Mapping.dll 提供用于创建地图和图层、标注要素 、执行查询 操作以及在 2D 或 3D 模式下可视化 它们的类型。提供用于创建栅格图层 和自定义栅格渲染 的栅格 API,以及用于管理样式、样式项和符号的 API。
ArcGIS.Desktop.TaskAssistant.dll 提供 Tasks 框架,允许开发人员访问、打开、关闭或导出 任务项
ArcGIS.Desktop.Workflow.dll 提供用于创建、配置和执行 Workflow Manager Classic 作业和查询的功能。提供从 Workflow Manager Classic 数据库中检索配置信息的功能。
ArcGIS.Desktop.Workflow.Client.dll 提供检索Workflow Manager 的作业 ID 和连接信息的功能。

没有公共 API 的扩展(无法使用的)

{ArcGIS Pro 安装文件夹}\bin\Extensions 子文件夹中的扩展程序集)中没有公共 API。它们目前仅供 Esri 内部使用。开发人员是无法引用的,只需知道即可

|----------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| 程序集 | 描述 |
| ArcGIS.Desktop.Analyst3D.dll | 是一个与 ArcGIS 3D Analyst 扩展模块相关的动态链接库(DLL)。这个扩展模块是用于在 ArcGIS Pro 中进行三维(3D)分析和数据处理的工具集。它提供了多种功能,包括创建、编辑和分析 GIS 数据,并且支持各种类型的 3D 数据,如点云、多面体、TIN、terrain 数据集和栅格等。ArcGIS 3D Analyst 提供了一组丰富的地理处理工具,可以用于创建并修改不规则三角网 (TIN)、栅格和 terrain 表面,并从这些对象中提取信息和要素。此外,该扩展模块还允许用户使用机器学习自动化工作流来处理点云数据,并提供高级地理处理功能以获得更深入的洞察。 |
| ArcGIS.Desktop.Aviation.dll | 用于航空领域的扩展插件。这个插件是整个系统的一部分,该系统用于管理数据、产品、工作流程和质量。 |
| ArcGIS.Desktop.Bathymetry.dll | ArcGIS Bathymetry 是一个用于管理和分析****测深数据的工具,它扩展了 ArcGIS Pro 的功能,提供了一种地理方法来探索和建模测深数据及其元数据。 |
| ArcGIS.Desktop.BusinessAnalyst.dll | 是一个与 Esri Business Analyst Desktop 相关的组件。Esri Business Analyst Desktop 是一个用于地理空间分析和商业智能的工具, |
| ArcGIS.Desktop.Cad.dll | 用于支持在地理信息系统(GIS)中使用 AutoCAD 环境功能。 |
| ArcGIS.Desktop.Charts.dll | 用于支持图表模块的功能。允许用户可视化和浏览数据,以揭示在查看表格或地图时难以察觉的模式、关系和结构。 |
| ArcGIS.Desktop.DataEngineering.dll | 使用数据工程,您可以探索、可视化、清理和 准备数据。数据工程过程是许多空间分析和制图工作流的常见第一步。这 数据工程视图和功能区可以帮助您更好地了解 数据,并为 GIS 工作流做好准备。 |
| ArcGIS.Desktop.DataSourcesRaster.dll | 主要用于处理栅格数据源。包含了处理栅格数据的工作空间工厂和数据格式。它支持多种栅格数据格式,并提供了对这些数据的管理和操作功能。提供了用户界面(UI)来支持 DataSourcesRaster 库中的对象。例如,它包含了一个用于创建栅格数据集的对话框。使用了栅格目录数据模型来管理栅格数据集。 |
| ArcGIS.Desktop.Defense.dll | 提供了一系列地理处理工具,可以实现确定位置、距离、范围和可见性的分析流程和工作流自动化。 |
| ArcGIS.Desktop.DefenseMapping.dll | Defense Mapping 包括用于数据采集、数据属性、数据验证和地理数据库维护的 Topographic Production 工具箱。该扩展还提供产品数据文件,其中包括地形图 (TM)、跨国地理空间联合生产计划 (MGCP) 地形图 (MTM)、影像城市地图 (ICM) 等所需的地理数据库模型、拓扑、业务规则、制图规则和地图模板。 |
| ArcGIS.Desktop.Editing.PushPull.dll | 使用 Push Pull 工具推拉工具凸出 2D 形状并修改现有 3D 凸出模型。 |
| ArcGIS.Desktop.FullMotionVideo.dll | 全动态视频 (FMV) 功能,可以使用被称为视频播放器的视频查看和分析系统处理存档和实时流视频数据。 通过视频播放器,您可以直观地分析视频数据并收集感兴趣的要素。 它适用于视频数据,包括编码到视频数据流中的基本地理位置、传感器和平台方向信息,显示视频影像在地图上的位置。 |
| ArcGIS.Desktop.GAWizard.dll | |
| ArcGIS.Desktop.GeoProcessing.BDC.dll | |
| ArcGIS.Desktop.GeoProcessing.SAModels.dll | |
| ArcGIS.Desktop.Geostatistics.dll | |
| ArcGIS.Desktop.Indoors.dll | |
| ArcGIS.Desktop.Intelligence.dll | |
| ArcGIS.Desktop.Intelligence.Common.dll | |
| ArcGIS.Desktop.KnowledgeGraph.dll | |
| ArcGIS.Desktop.LocationReferencing.dll | |
| ArcGIS.Desktop.Maritime.dll | |
| ArcGIS.Desktop.Metadata.dll | |
| ArcGIS.Desktop.MotionImagery.dll | |
| ArcGIS.Desktop.NeighborhoodExplorer.dll | |
| ArcGIS.Desktop.NetworkAnalysis.Facility.dll | |
| ArcGIS.Desktop.NetworkAnalysis.NetworkDiagrams.dll | |
| ArcGIS.Desktop.NetworkAnalysis.Transportation.dll | |
| ArcGIS.Desktop.Search.dll | |
| ArcGIS.Desktop.Sharing.dll | |
| ArcGIS.Desktop.TerritoryDesign.dll | |

扩展模块Nuget

【ArcGIS Pro】扩展模块 Nuget 使用-CSDN博客

现成的代码片段(初学者多看)

专业摘要 ·Esri/arcgis-pro-sdk 维基 ·GitHub的

例如一下提供了关闭Pro,获取Pro版本,关闭特定窗格,激活窗格的相关代码

ArcGISPro注册表项

ArcGIS Pro 注册表项 ·Esri/arcgis-pro-sdk 维基 ·GitHub的

参考文献

ArcGIS.Desktop.DataReviewer.dll (metaso.cn)
ArcGIS.Desktop.KnowledgeGraph.dll (metaso.cn)

ArcGIS.Desktop.Workflow.dll (metaso.cn)

ArcGIS.CoreHost.dll (metaso.cn)

ArcGIS.Desktop.Analyst3D.dll (metaso.cn)

ArcGIS.Desktop.Aviation.dll (metaso.cn)

ArcGIS.Desktop.Bathymetry.dll (metaso.cn)

ArcGIS.Desktop.BusinessAnalyst.dll (metaso.cn)

ArcGIS.Desktop.Cad.dll (metaso.cn)

ArcGIS.Desktop.Charts.dll (metaso.cn)

数据工程简介---ArcGIS Pro |文档

ArcGIS.Desktop.DataSourcesRaster.dll (metaso.cn)

Defense 工具箱概述---ArcGIS Pro | 文档

ArcGIS Defense Mapping 入门---ArcGIS Pro |文档

相关推荐
新中地GIS开发老师19 小时前
WebGIS和WebGL的基本概念介绍和差异对比
学习·arcgis·webgl
王解19 小时前
Jest项目实战(2): 项目开发与测试
前端·javascript·react.js·arcgis·typescript·单元测试
GISerQ.2 天前
ArcGIS/QGIS按掩膜提取或栅格裁剪后栅格数据的值为什么变了?
arcgis·栅格数据·按掩膜提取
坫鹏加油站2 天前
【ArcGIS】绘制各省碳排放分布的中国地图
arcgis
前端 贾公子3 天前
koa项目实战 == 实现注册登录鉴权
arcgis
jyan_敬言4 天前
【Linux】centos7安装配置DHCP、FTP服务
linux·运维·服务器·c语言·开发语言·arcgis·青少年编程
yngsqq5 天前
arcgis坐标系问题
arcgis
GIS思维5 天前
ArcGIS影像调色(三原色)三原色调整
arcgis
新中地GIS开发老师6 天前
地理信息科学专业想搞GIS开发:学前端还是后端?
前端·javascript·arcgis·前端框架·cesium
Z_W_H_8 天前
【ArcGISPro】宣布推出适用于 ArcGIS 的 AI 助手
人工智能·arcgis·ai