创建自定义垂直变换 (数据管理)

摘要

创建在两个垂直坐标系或基准之间进行数据变换的变换定义。 该工具的输出可用作任何需要垂直变换参数的工具的变换对象。

使用情况

  • 所有的自定义垂直变换文件都将存储为扩展名为 .vtf 的文件,并存储在应用程序数据文件夹中的 Esri\ArcGISPro\ArcToolbox\CustomTransformations 文件夹中。

    • 在所有 Windows 操作系统中,AppData 文件夹位于 %appdata%,临时文件夹位于 %temp%。 在命令窗口中输入 %appdata% 将返回应用程序数据文件夹位置。 输入 %temp% 将返回临时文件夹位置。
    • 在 UNIX 系统中,tmp 文件夹和应用程序数据文件夹分别位于主目录的 $TMP$HOME 下。 在终端键入 /tmp 将返回该位置。

  • 使用垂直变换的任何地理处理工具将检查默认存储位置中的所有自定义变换,并将它们作为变换参数的选项呈现。 如果支持,变换对话框将显示组合的地理和垂直变换路径。 这些变换也可用于地理变换环境。

  • 无法编辑自定义变换文件。 它们是存储版本和字符串长度信息的二进制文件,如果修改可能会损坏。 要更新变换文件,需创建一个新的自定义垂直变换并覆盖现有文件。

  • 文件必须放置在以下位置之一:

    • 如果 ArcGIS Coordinate Systems Data 按计算机(针对所有人)进行安装,则需将文件复制到 C:\Program Files (x86)\ArcGIS\CoordinateSystemsData\pedata\Vertical 文件夹。
    • 如果 ArcGIS Coordinate Systems Data 按用户进行安装,则需将文件复制到 C:\Users\username\AppData\Local\Programs\ArcGIS\CoordinateSystemsData\pedata\Vertical 文件夹。
    • 如果未安装 ArcGIS Coordinate Systems Data,则需将文件复制到位于 C:\Program Files\ArcGIS\Pro\Resources\pedata 文件夹中的 ArcGIS Pro pedata 文件夹中,其中 ArcGIS Pro 按计算机(针对所有人)进行安装。
    • 如果 ArcGIS Pro 按用户进行安装,则需将文件复制到位于 C:\Users\username\AppData\Local\Programs\ArcGIS\Pro\Resources\pedataArcGIS Pro pedate 文件夹中。

    如果未使用默认安装位置安装 ArcGIS Pro 或 ArcGIS Coordinate Systems Data,则需将文件复制到等效的 pedata 文件夹中。 如果由于权限限制或隐藏而无法访问这些位置,请咨询系统管理员以获取帮助。

  • 出于性能原因,大多数文件都是以二进制格式存储的。 GEOID 方法用于从椭球高度转换为大地水准面(或其他重力相关)高度,并支持简单 ASCII 文件格式。 该文件格式由美国国家大地测量局使用。 在标题行的左下角包含最小纬度和最小经度(以十进制度表示)。 无需使用 0-360 经度范围(如下所示)。 接下来是纬度和经度点之间的分隔,也是以十进制度表示。 接下来的值是每行和每列中的点数。 最后一个值是校验位,始终为 1。 偏移或间隔值为浮点数,以米为单位。 第一行从最小纬度和经度值开始。 下面的前三行显示了一行值不必须是单行。

        15.000000000000    291.00000000000    0.1666666666667E-01    0.1666666666665E-01    361   301  1
      -29.2936  -29.3314  -29.3710  -29.4121  -29.4540  -29.4965  -29.5382  -29.5807
      -29.6233  -29.6660  -29.7090  -29.7522  -29.7956  -29.8397  -29.8846  -29.9301
  • 不要将两个垂直坐标系都设置为椭球高度。 此行为将在未来的版本中被阻止。 将椭球高度转换为地理(基准面)。

参数

标注说明数据类型
垂直变换名称

自定义变换定义的名称。

String
源垂直坐标系

起始垂直坐标系。

提供一个已知 ID (WKID) 或使用选择坐标系按钮 选择坐标系 选择坐标系。

String
目标垂直坐标系

最终垂直坐标系。

提供一个已知 ID (WKID) 或使用选择坐标系按钮 选择坐标系 选择坐标系。

String
插值地理坐标系
(可选)

插值地理坐标系。

仅在垂直变换方法要求时,此参数才处于活动状态。

在从文件中进行插值时,或者所用方法需要纬度和经度坐标时,将使用地理坐标系。 不需要插值地理坐标系的方法包括 Null、单位变更、高度深度翻转和垂直偏移。

提供一个已知 ID (WKID) 或使用选择坐标系按钮 选择坐标系 选择坐标系。

Coordinate System
垂直变换方法
(可选)

垂直变换方法。

从下拉列表中选择用于将输入垂直坐标系变换为输出垂直坐标系的变换方法。 选择后,其参数将显示在表中,以供编辑。

方法和参数的列表可在《地理和垂直转换》PDF 中找到

如果使用需要文件的方法,请参阅用法说明以了解文件的放置位置。

String
范围
(可选)

变换适用的范围。

对于范围坐标系,请使用 WGS84 (WKID:4326) 或其他基于 GNSS 的地理坐标系统,如 NAD 1983 或 GDA2020。 如果提供了投影坐标系或具有投影坐标系的图层,则需将其值转换为纬度和经度。

  • 当前显示范围 地图视图 - 范围基于活动地图或场景。 仅在存在活动地图时,才可使用此选项。
  • 绘制范围 构造直角并完成草图 - 范围将基于在地图或场景上绘制的矩形。 此选项将在工程地理数据库中创建要素类并将图层添加至地图。 该要素类的坐标系将与地图相同。
    注:

    环境对话框中不提供此选项。 只能在具有范围数据类型的工具参数中或工具对话框的环境选项卡中找到此选项。

    注:

    当选中从“编辑”选项卡启用和禁用编辑编辑选项时,必须在编辑功能区选项卡上启用编辑才能绘制范围。

  • 图层范围 图层 - 范围基于活动地图图层。 使用下拉列表选择可用图层,或使用所有图层中数据的范围选项获取所有活动地图图层(不包括底图)的组合范围。 仅在存在具有图层的活动地图时,才可使用此选项。

    每个地图图层具有以下选项:

    • 所有要素 全选 - 图层中所有要素的范围。
    • 选定要素基于选定要素的区域 - 图层中选定要素的范围。
    • 可见要素 Extent Indicator - 图层中可见要素的范围。
      注:

      选定要素 基于选定要素的区域可见要素 Extent Indicator 选项中的范围仅适用于要素图层。

  • 浏览 浏览 - 范围基于现有数据集。
  • 剪贴板 粘贴 - 可在剪贴板中复制和粘贴范围。
    • 复制范围 复制 - 将范围坐标和坐标系复制到剪贴板。
    • 使用粘贴范围 粘贴 - 从剪贴板粘贴范围坐标和(可选)坐标系。 如果剪贴板值不包含坐标系,则范围将使用地图的坐标系。
    注:

    将使用与 ArcPy Extent 对象相同的格式和顺序从剪贴板中复制和粘贴范围坐标:x-min、y-min、x-max、y-max 和空间参考。

  • 重置范围 重置 - 将范围重置为默认值。
  • 手动输入坐标 - 坐标必须是数值,并且与活动地图的坐标系相匹配。
    警告:

    地图可能使用与输入的坐标不同的显示单位。 不支持使用主方向(N、S、E、W)。 在南纬和西经坐标中使用负号。

Extent
精度
(可选)

以米为单位的精确度的常规说明。

Double

派生输出

标注说明数据类型
输出变换

输出变换。

Value Table

arcpy.management.CreateCustomVerticalTransformation(vt_name, source_vt_coor_system, target_vt_coor_system, {interpolation_gcs}, {custom_vt}, {extent}, {accuracy})
名称说明数据类型
vt_name

自定义变换定义的名称。

String
source_vt_coor_system

起始垂直坐标系。

String
target_vt_coor_system

最终垂直坐标系。

String
interpolation_gcs
(可选)

插值地理坐标系。

仅在垂直变换方法要求时,此参数才处于活动状态。

在从文件中进行插值时,或者所用方法需要纬度和经度坐标时,将使用地理坐标系。 不需要插值地理坐标系的方法包括 Null、单位变更、高度深度翻转和垂直偏移。

Coordinate System
custom_vt
(可选)

垂直变换方法。

从下拉列表中选择用于将输入垂直坐标系变换为输出垂直坐标系的变换方法。 选择后,其参数将显示在表中,以供编辑。

方法和参数的列表可在《地理和垂直转换》PDF 中找到

如果使用需要文件的方法,请参阅用法说明以了解文件的放置位置。

String
extent
(可选)

变换适用的范围。

对于范围坐标系,请使用 WGS84 (WKID:4326) 或其他基于 GNSS 的地理坐标系统,如 NAD 1983 或 GDA2020。 如果提供了投影坐标系或具有投影坐标系的图层,则需将其值转换为纬度和经度。

  • MAXOF - 将使用的所有输入的最大范围。
  • MINOF - 将使用的所有输入共用的最小范围。
  • DISPLAY - 范围与可见显示范围相等。
  • 图层名称 - 将使用指定图层的范围。
  • Extent 对象 - 将使用指定对象的范围。
  • 以空格分隔的坐标字符串 - 将使用指定字符串的范围。 坐标以 x-min,y-min,x-max,y-max 的顺序表示。
Extent
accuracy
(可选)

以米为单位的精确度的常规说明。

Double

派生输出

名称说明数据类型
out_transformation

输出变换。

Value Table

代码示例

CreateCustomVerticalTransformation 示例(Python 窗口)

以下独立脚本使用 CreateCustomVerticalTransformation 函数创建了自定义垂直变换。

import arcpy
arcpy.management.CreateCustomVerticalTransformation(
    vt_name="NAD_1983_2011_ellipsoid_to_GEOID18b",
    source_vt_coor_system='VERTCS["NAD_1983_2011",DATUM["D_NAD_1983_2011",SPHEROID["GRS_1980",6378137.0,298.257222101]],PARAMETER["Vertical_Shift",0.0],PARAMETER["Direction",1.0],UNIT["Meter",1.0]]',
    target_vt_coor_system='VERTCS["NAVD88_height_(ftIntl)",VDATUM["North_American_Vertical_Datum_1988"],PARAMETER["Vertical_Shift",0.0],PARAMETER["Direction",1.0],UNIT["Foot",0.3048]]',
    interpolation_gcs='GEOGCS["GCS_NAD_1983_2011",DATUM["D_NAD_1983_2011",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]]',
    custom_vt="GEOID|g2018u0.bin|Bilinear",
    extent='-110 30 -80 40 GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]]',
    accuracy=0.5
)

环境

此工具不使用任何地理处理环境。

许可信息

  • Basic: 是
  • Standard: 是
  • Advanced: 是

相关主题