标注 | 说明 | 数据类型 |
输入表 | 包含源坐标的表。 | Table View |
输出表 | 包含转换后的坐标的输出表。 | Table |
X 字段(经度、UTM、MGRS、USNG、GARS、GEOREF) | 输入表中包含 x 或经度坐标的字段。 | Field |
输入坐标格式 | 指定输入表坐标的格式。
| String |
Y 字段(纬度) (可选) | 输入表中包含 y 或纬度坐标的字段。 当输入坐标格式参数设置为十进制度 - 两个字段、度和十进制分 - 两个字段或度分秒 - 两个字段时,将使用 Y 字段(纬度)参数。 | Field |
输出坐标系 (可选) | 输出表中的坐标的空间参考。 默认值为 GCS_WGS_1984。 | Spatial Reference |
摘要
用于将表中的源坐标转换为多种坐标格式。
该工具使用具有坐标的输入表,并输出包含以下坐标格式的字段的新表:十进制度、度和十进制分、度分秒、全球区域参考系、世界地理参考系、通用横轴墨卡托坐标、美国国家格网和军事格网参考系。
使用情况
输出表将保留输入表的原始字段,并为转换后的符号添加文本字段,其中包括以下内容:
- DDLat- 十进制度纬度字段
- DDLon- 十进制度经度字段
- DDMLat- 度和十进制分纬度字段
- DDMLon- 度和十进制分经度字段
- DMSLat- 度分秒纬度字段
- DMSLon- 度分秒经度字段
- UTM_BANDS- 通用横轴墨卡托坐标带
- MGRS - 军事格网参考系
- USNG - 美国国家格网
- GARS- 全球区域参考系统
- GEOREF- 世界地理参考系
参数
arcpy.defense.GenerateCoordinateNotations(in_table, out_table, x_or_lon_field, in_coordinate_format, {y_or_lat_field}, {coordinate_system})
名称 | 说明 | 数据类型 |
in_table | 包含源坐标的表。 | Table View |
out_table | 包含转换后的坐标的输出表。 | Table |
x_or_lon_field | 输入表中包含 x 或经度坐标的字段。 | Field |
in_coordinate_format | 指定输入表坐标的格式。
| String |
y_or_lat_field (可选) | 输入表中包含 y 或纬度坐标的字段。 当 in_coordinate_format 参数设置为 DD_2、DDM_2 或 DMS_2 时,将使用 y_or_lat_field 参数。 | Field |
coordinate_system (可选) | 输出表中的坐标的空间参考。 默认值为 GCS_WGS_1984。 | Spatial Reference |
代码示例
以下 Python 窗口脚本演示了如何使用 GenerateCoordinateNotations 函数。
import arcpy
arcpy.env.workspace = r"C:/Data.gdb"
arcpy.GenerateCoordinateNotations_defense(r"C:/CSV/TableToPoint.csv",
"TableWithMGRS", "x", "DD_2", "y")
以下示例将在示例工作流脚本中使用 GenerateCoordinateNotations 函数。
# Description: Add additional coordinate fields to data and then create points
# from output table.
# Import system modules
import arcpy
# Set environment settings
arcpy.env.workspace = r"C:/Data.gdb"
arcpy.env.overwriteOutput = True
# Add additional coordinate formats
in_coords = r"C:/CSV/TableToPoint.csv"
out_table = "TableWithMGRS"
arcpy.GenerateCoordinateNotations_defense(in_coords, out_table, "x", "DD_2", "y")
# Create points
result_point = "Output_Point"
arcpy.CoordinateTableToPoint_defense(out_table, result_point, "MGRS", "MGRS")