描述
可创建一种变换方法,用于在两个地理坐标系或基准面之间对数据进行转换。对于任何参数要求进行地理变换的工具,都可使用此工具的输出作为变换方法。
使用方法
所有的自定义地理变换文件都将存储为扩展名为 .gtf 的文件,并存储在用户应用程序数据文件夹中的 ESRI\<ArcGIS product>\ArcToolbox\CustomTransformations 文件夹中。如果 CustomTransformations 文件夹不存在,此工具会自动创建。如果应用程序数据文件夹为只读或已隐藏,则输出会创建到用户临时文件夹中的 ArcToolbox\CustomTransformations 中。Application Data 和 temp 文件夹的位置或名称取决于操作系统。
- 在所有 Windows 操作系统中,应用程序数据文件夹均位于 %appdata% 中,而用户的临时文件夹则位于 %temp% 中。在命令窗口中输入 %appdata% 将返回应用程序数据文件夹位置。输入 %temp% 将返回临时文件夹位置。
- 在 Unix 系统中,tmp 文件夹和应用程序数据文件夹分别位于用户的主目录 $HOME 和 $TMP 下。在终端键入 /tmp 将返回该位置。
对于任何使用地理变换的地理处理工具,都可查看默认储存位置中的所有自定义变换,这些自定义变换会在对话框的地理变换参数下拉列表中显示为有效的变换选项。
自定义变换文件不能进行编辑。它们为二进制文件,用来储存版本和字符串长度信息,如果在地理处理框架之外进行编辑,可能会被损坏。要更新该文件,需要创建一个新的自定义地理(坐标)变换并覆盖现有文件。
语法
arcpy.management.CreateCustomGeoTransformation(geot_name, in_coor_system, out_coor_system, custom_geot)
参数 | 说明 | 数据类型 |
geot_name | 自定义变换方法的名称。 所有的自定义地理变换文件都将存储为扩展名为 .gtf 的文件,并存储在用户应用程序数据文件夹中的 ESRI\<ArcGIS product>\ArcToolbox\CustomTransformations 文件夹中。如果 CustomTransformations 文件夹不存在,此工具会自动创建。如果应用程序数据文件夹为只读或已隐藏,则输出会创建到用户临时文件夹中的 ArcToolbox\CustomTransformations 中。Application Data 和 temp 文件夹的位置或名称取决于操作系统。
| String |
in_coor_system | 起始地理坐标系。 | Coordinate System |
out_coor_system | 最终地理坐标系。 | Coordinate System |
custom_geot | 将 METHOD 和 PARAMETER 的值嵌入针对自定义变换 GEOGTRAN 的字符串中。设置方法的名称时,可供选择的方法有 Geocentric_Translation、Molodensky、Molodensky_Abridged、Position_Vector、Coordinate_Frame、Molodensky_Badekas、NADCON、HARN、NTV2、Longitude_Rotation、Unit_Change 和 Geographic_2D_Offset。每种方法都有一组特定的参数,您可以通过在自定义地理变换的整个字符串表示内的参数名称旁输入文本来编辑参数值。请参阅以下 Python 实例中的示例。 | String |
代码示例
以下独立脚本使用 CreateCustomGeoTransformation 函数创建一个具有特定用途的自定义转换。输出是在默认目录下创建的 *.gtf 文件。
# Name: CreateCustomGeographicTransformation.py
# Description: Creates a custom geographic transformation in the default directory.
# import system modules
import arcpy
# set the variables
geoTransfmName = "cgt_geocentric2"
# create a spatial reference object for GCS_Tokyo
inGCS = arcpy.SpatialReference("Tokyo")
# create a spatial reference object for GCS_WGS_1984
outGCS = arcpy.SpatialReference("WGS 1984")
customGeoTransfm = "GEOGTRAN[METHOD['Geocentric_Translation'],PARAMETER['X_Axis_Translation',''],PARAMETER['Y_Axis_Translation',''],PARAMETER['Z_Axis_Translation','']]"
arcpy.CreateCustomGeoTransformation_management(geoTransfmName, inGCS, outGCS, customGeoTransfm)
环境
许可信息
- Basic: 是
- Standard: 是
- Advanced: 是