目录
1、ArcGIS Pro 地图相关的模块
1.1 介绍
ArcGIS Pro的地图功能是通过ArcGIS.Desktop.Mapping程序集获取的。ArcGIS.Desktop.Mapping命名空间为地图程序编码提供类和成员。这包括创建地图、在ArcGIS中打开web地图、添加内容——比如图层——到地图、创建和编辑符号、将渲染器分配给图层,以及支持地图注释和动态标签。ArcGIS.Desktop.Mapping空间还提供了在ArcGIS Pro项目中管理样式和样式项的能力。
地图相关的功能配置在ArcGIS\Pro\bin\Extensions\Mapping目录下,配置文件是ADMapping.daml。
1.2 与ArcMap对比
- Pro的工程(类似于ArcMap的MXD)可以包含多个地图对象,而ArcMap的MXD只能包含一个地图对象。
- 提供了新的地图类型:底图。
- 二维地图和三维场景并存,都能在Pro中显示。
- 地图对象与视图对象分离,地图对象管理数据,视图对象显示与交互。
1.3 地图对象Map
1.3.1 介绍
Map对象是ArcGIS Pro中用于地理数据组织的主要对象。它是一个图层和独立表的容器。
1.3.2 创建地图对象
使用MapFactory类提供的方法创建地图对象。
1.3.3 打开地图
使用ProApp.Panes.CreateMapPaneAsync方法打开地图。
1.4 地图视图对象MapView
1.4.1 介绍
Pro使用MapView对象和地图及要素进行交互。
1.5 地图容器IMapPane
1.5.1 介绍
地图容器是IMapPane接口对象。通过该接口可以获取此容器下的地图视图对象。
1.5.2 控制跨进程拖拽地图
地图容器是MapViewModule类对象,该类的声明在ArcGIS.Desktop.Mapping命名空间,但是该类是受保护的没有被公开。所以不能通过代码控制。
解决办法:
通过修改Pro的配置,修改地图容器的属性。在ArcGIS Pro扩展文件夹的Mapping文件夹,打开ADMapping.daml配置文件,找到id为“esri_mapping_mapPane”的节点,增加拖拽属性“isDropTarget="false"”;
1.6 地图功能
1.6.1 设置自定义的全图范围
单击全图范围 进行缩放以显示地图或场景中的所有数据。但是,全图范围有时可能显示过多不必要的数据。此类情况下,可能需要设置自己的全图范围。
1.6.2 地图参考比例尺
设置 2D 地图的参考比例后,会按照该比例将符号和文本的大小修复为所需的高度和宽度。缩放时,您的符号和文本的大小会相应地增大和减小。如果未设置任何参考比例(默认行为),则在进行缩放时地图中的符号和文本大小会保持不变。
2、 图层
2.1 图层类型
图层对象提供了显示比例尺、定义查询、编辑性控制、可见性控制、选择性控制、捕捉控制、渲染、标注控制等方法。
图层类型基本包括:图层组、要素图层、栅格图层、Web服务图层等。
2.2 图层右键菜单
2.2.1 右键菜单配置
地图图层菜单配置路径:
图层菜单配置内容:
2.3 图层创建
图层工厂类LayerFactory提供图层创建的各种方法。
2.4 图层加载
创建图层时即可指定图层的容器(地图对象或图层组)。
2.5 图层显示
通过指定定义查询来过滤来自层的要素。
2.6 图层渲染
2.6.1 图层符号化接口
2.6.2 符号样式接口
Styleprojectitem是ArcGIS Pro项目中的一种样式。
2.6.3 样式管理
样式是包含可重用的符号、颜色、配色方案和布局元素,被包含在项目工程中。与ArcMap不同的是ArcMap的样式文件是Style文件而Pro的样式文件为Stylx文件。
使用代码创建样式并加入工程:
2.6.4 自定义符号样式
(1)新建stylx文件
(2)新建符号并设置符号属性
参考文档及地址: