摘要
使用预定义制图规范创建一个描绘格网、经纬网和边界要素的要素类分组图层。格网图层非常适用于具有特定比例和范围的高级格网定义。
每个格网图层均可由掩膜面、裁剪面、线段(线)、格网线(线)、刻度(线)、端点(点)、点(点)和注记要素类组成。这些组成部分都将作为要素存储在相应的要素类中。其要素类保存在地理数据库的指定要素数据集中。用于存储格网基本组成部分的要素类共七个。每个要素类名称都以三个字母为前缀,这有助于识别要素类所包含的格网组成部分。这些要素类/组成部分如下:
- ANO_ 为注记要素类。
- EPT_ 为端点要素类。
- GLN_ 为格网线要素类。
- MSK_ 为掩膜要素类。
- PNT_ 为点要素类。
- SEG_ 为线段要素类。
- TKS_ 为格网线要素类。
以上要素类都可包含多个格网的信息。另外一个要素类 (GRD_) 包含组织信息,例如地图名称和格网类型等用于对格网进行组织的信息。
格网定义模板存储在预定义的 XML 文件中。该文件中存储了各个格网的规范属性,如编号、颜色及格网线的线条粗细等。如果应用了定义模板,则将根据以当前范围或所选要素(感兴趣区)范围、比例和坐标系为基础的规范创建要素。
用法
此工具专用于要打印或导出的投影地图。它并不适用于创建随用户导航地图而动态更新的格网或经纬网。
必须一个输入感兴趣区以确定要创建的格网图层的范围。如果您要使用要素图层来定义感兴趣区,则该要素图层必须是面要素类或面图层。
在建立格网和经纬网图层 对话框中,定义格网模板(XML 文件) 参数之后,将鼠标指针悬停在参数名称左侧紧邻的上下文相关区域上或单击此区域,可显示已定义的 XML 格网定义模板的格网类型、描述、旋转类型和比例类型信息。
格网模板 XML 文件将指定用于表示主坐标系和辅助坐标系的测量值或位置的格网组成部分。所有指定的坐标系必须共用一个通用地理坐标系。如果要将主坐标系更改为不使用默认基准面的坐标系,比如将使用 WGS 1984 的坐标系更改为使用 NAD 1983 的坐标系,则您必须将每个默认的辅助坐标系也都更改为使用 NAD 1983 的坐标系。
格网模板、感兴趣区域、输入要素数据集以及主坐标系和辅助坐标系参数必须使用相同的基准面,例如 WGS 1984 或 NAD 1983。
格网模板 XML 文件最多可为四个辅助坐标系创建格网组成部分。辅助格网的数量由该 XML 文件指定。无法添加或删除辅助坐标系,但可以覆盖默认值。
主坐标系必须是投影坐标系。
辅助坐标系可以是投影坐标系或地理坐标系。
输入要素数据集的空间参考所具有的地理坐标系应与格网模板 XML 文件所指定的地理坐标系相同。
输入感兴趣区的空间参考所具有的地理坐标系应与格网模板 XML 文件所指定的地理坐标系相同。
如果正从 ArcMap 访问此工具,选中使用格网设置配置数据框和布局复选框将确保布局上的数据框被调整到最适合所创建的格网。数据框的坐标系、比例、旋转、大小、范围和裁剪可能会被更改以匹配 XML 格网规范。仅当此工具在 ArcMap 布局视图中执行且不是在后台运行时,此设置才可用。默认情况下不选中此复选框,这样将不会更改任何数据框属性。
指定一个输出位置中已存在的栅格名称时,该栅格数据将被覆盖。
以下参数值将从格网模板 XML 中自动获取:
- 输出图层
- 带字符串值的名称
- 参考比例
- 旋转
- 掩膜大小
- XY 容差
- 主坐标系
- 辅助坐标系
但是,所有这些默认值都可以被新值覆盖。
语法
MakeGridsAndGraticulesLayer_cartography (in_template, in_aoi, input_feature_dataset, output_layer, {name}, {refscale}, {rotation}, {mask_size}, {xy_tolerance}, {primary_coordinate_system}, {configure_layout}, {ancillary_coordinate_system_1}, {ancillary_coordinate_system_2}, {ancillary_coordinate_system_3}, {ancillary_coordinate_system_4})
参数 | 说明 | 数据类型 |
in_template | XML 格网定义模板针对每个格网图层存储了规范的图形属性。除图形属性(无法在执行前更改)之外,定义中还具有特定的默认值(显示为参数),这些默认值可在执行之前进行修改。 模板文件位于 \ArcGIS\Desktop10.1\GridTemplates 目录中。可通过 ArcGIS 资源中心获得和共享更多的格网模板。 Esri Production Mapping 扩展模块提供了可用于创建新模板和修改现有模板的格网设计器。 | File |
in_aoi | 用于确定待创建的格网图层范围的要素图层或 x,y 范围。
| Feature Layer; Extent |
input_feature_dataset | 用于存储要素的要素数据集。如果还不存在特定于格网的要素类,将创建此要素类。如果此要素类已存在,并且还存在一个与要创建的格网具有相同名称和类型的格网,则原格网将被覆盖。 | Feature Dataset |
output_layer | 用于描绘格网、经纬网和边界要素的要素类分组图层。每个格网图层均可由掩膜面、裁剪面、线段(线)、格网线(线)、刻度(线)、端点(点)、点(点)和注记要素类组成。 | Group Layer |
name (可选) | 所创建的制图格网的名称,用于区分存储在同一要素数据集和要素类集合中的格网,使用任一格式表示:
格网名称不能包含任何特殊字符。其中包括:
| String; Field |
refscale (可选) | 用于创建格网和显示格网的比例。如果 XML 格网定义文件中的参考比例定义为“使用环境”,则将按以下顺序获取参考比例:
| Double |
rotation (可选) | 格网组成部分的旋转角度。旋转用于提供与页面等高的注记。除非另有指定,否则将使用感兴趣区要素计算旋转。如果 XML 格网定义文件中的旋转类型定义为“使用环境”,则将按以下顺序获取旋转:
| Double |
mask_size (可选) | 掩膜是面要素,它将在内图廓线范围周围形成一个外部环,还用于对为坐标标注保留的区域中的数据进行掩膜。掩膜大小用于定义面掩膜要素的宽度(使用地图单位或页面单位)。加入坐标标注时,可能需要调整数据框的大小以适应掩膜边缘。 | Linear unit |
xy_tolerance (可选) | 地理数据库要素之间的最小容许距离,以线性单位表示。此值默认为在 XML 中设置的值。 如果将此值设置得较大,则数据会具有较低的坐标精度;如果将此值设置得较小,则数据会具有较高的坐标精度。处于所设置的 XY 容差范围内的要素将被视为重合的要素。 | Linear unit |
primary_coordinate_system (可选) | 格网模板 XML 文件用于创建描绘坐标或位置的格网组成部分,此文件可为一个主坐标系和最多四个辅助坐标系创建具有此作用的格网组成部分。辅助格网的数量由此文件指定。无法添加或删除辅助坐标系。所有指定的坐标系必须共用一个通用地理坐标系。如果要将主坐标系更改为不使用默认基准面的坐标系,比如将使用 WGS 1984 的坐标系更改为使用 NAD 1983 的坐标系,则您必须将每个默认的辅助坐标系也都更改为使用 NAD 1983 的坐标系。 这是要创建的格网图层的主坐标系。通常,这将是最终产品或数据框的坐标系。此坐标系必须是投影坐标系。 如果将 XML 格网定义文件中的“主坐标系”定义为“使用环境”,则将按以下顺序获取“主坐标系”:
在所有情况下,用户输入都将采用最高优先级。 | Spatial Reference |
configure_layout (可选) | 调整数据框设置以确保与格网图层相匹配。可能会更改数据框的坐标系、比例、旋转、大小、范围和裁剪以实现一致性。仅当此工具在 ArcMap 布局视图中执行且不是在后台运行时,此设置才可用。默认情况下不选中此复选框。
| Boolean |
ancillary_coordinate_system_1 (可选) |
格网模板 XML 文件用于创建描绘坐标或位置的格网组成部分,此文件可为一个主坐标系和最多四个辅助坐标系创建具有此作用的格网组成部分。辅助格网的数量由此文件指定。无法添加或删除辅助坐标系。所有指定的坐标系必须共用一个通用地理坐标系。如果要将主坐标系更改为不使用默认基准面的坐标系,比如将使用 WGS 1984 的坐标系更改为使用 NAD 1983 的坐标系,则您必须将每个默认的辅助坐标系也都更改为使用 NAD 1983 的坐标系。 这是第一个辅助坐标系。 | Spatial Reference |
ancillary_coordinate_system_2 (可选) | 格网模板 XML 文件用于创建描绘坐标或位置的格网组成部分,此文件可为一个主坐标系和最多四个辅助坐标系创建具有此作用的格网组成部分。辅助格网的数量由此文件指定。无法添加或删除辅助坐标系。所有指定的坐标系必须共用一个通用地理坐标系。如果要将主坐标系更改为不使用默认基准面的坐标系,比如将使用 WGS 1984 的坐标系更改为使用 NAD 1983 的坐标系,则您必须将每个默认的辅助坐标系也都更改为使用 NAD 1983 的坐标系。 这是第二个辅助坐标系。 | Spatial Reference |
ancillary_coordinate_system_3 (可选) | 格网模板 XML 文件用于创建描绘坐标或位置的格网组成部分,此文件可为一个主坐标系和最多四个辅助坐标系创建具有此作用的格网组成部分。辅助格网的数量由此文件指定。无法添加或删除辅助坐标系。所有指定的坐标系必须共用一个通用地理坐标系。如果要将主坐标系更改为不使用默认基准面的坐标系,比如将使用 WGS 1984 的坐标系更改为使用 NAD 1983 的坐标系,则您必须将每个默认的辅助坐标系也都更改为使用 NAD 1983 的坐标系。 这是第三个辅助坐标系。 | Spatial Reference |
ancillary_coordinate_system_4 (可选) | 格网模板 XML 文件用于创建描绘坐标或位置的格网组成部分,此文件可为一个主坐标系和最多四个辅助坐标系创建具有此作用的格网组成部分。辅助格网的数量由此文件指定。无法添加或删除辅助坐标系。所有指定的坐标系必须共用一个通用地理坐标系。如果要将主坐标系更改为不使用默认基准面的坐标系,比如将使用 WGS 1984 的坐标系更改为使用 NAD 1983 的坐标系,则您必须将每个默认的辅助坐标系也都更改为使用 NAD 1983 的坐标系。 这是第四个辅助坐标系。 | Spatial Reference |
代码实例
建立格网和经纬网图层 (MakeGridsAndGraticulesLayer) 工具示例(独立 Python 脚本)
此独立脚本显示的是使用 MakeGridsAndGraticulesLayer 工具创建制图格网的示例。
# Name: MakeGridsAndGraticulesLayer.py
# Description: Create grid for a selected area of interest in a file
# geodatabase
# Import system module
import arcpy
# Enabling logging of the results
arcpy.logHistory = True
# Enable background geoprocessing
# arcpy.Command("force_run_in_background yes") #uncomment this to run the
# GP tool in the background
# Set overwrite outputs of geoprocessing operations to true
arcpy.gp.overwriteOutput = 1
# Create a feature layer from the input area of interest feature class
# to pass to the Selection geoprocess below
arcpy.MakeFeatureLayer_management("C:/Base_Data/AOIs.gdb/QUAD_24K",
"QUAD_24K")
# Select a feature from the area of interest feature layer based on a
# definition query (this query, formatted for a file geodatabase, has
# been adjusted for use in python, in particular the use of \ in
# conjunction with the double quotes surrounding the field name in the
# definition query)
arcpy.SelectLayerByAttribute_management("QUAD_24K", "NEW_SELECTION",
"\"MSNAME\" = 'Swift Minnesota'")
# Set the values of the tool's parameters using one of the grid
# definition XML files located under the GridTemplates directory
t = "C:/Program Files/ArcGIS/Desktop10.1/GridTemplates/Quad_24K_NAD83.xml"
in_aoi = "QUAD_24K"
input_feature_dataset = "C:/Python_Output/grid_layers.gdb/QUAD_24K"
output_layer = "QUAD_24K_NAD83_Grid"
name = "MSNAME"
# Process: Make Grids and Graticules Layer (the '#' indicates use
# default values)
arcpy.MakeGridsAndGraticulesLayer_cartography(t, in_aoi,
input_feature_dataset,
output_layer, name, "#", "#",
"#", "#", "#")
环境
许可信息
- ArcGIS for Desktop Basic: 否
- ArcGIS for Desktop Standard: 是
- ArcGIS for Desktop Advanced: 是