使用方法
如果已指定了坐标系,则长度和面积将以该坐标系的单位进行计算,除非在长度单位和面积单位参数中选择了不同的单位。
如果输入要素具有选择内容,则在添加的字段中,仅所选要素具有计算值;其他所有要素将保留其现有值。
此工具适用于点、多点、折线和面要素类。
警告:
此工具会修改输入数据。有关详细信息以及避免数据被意外更改的策略,请参阅修改或更新输入数据的工具。
语法
arcpy.management.CalculateGeometryAttributes(in_features, geometry_property, {length_unit}, {area_unit}, {coordinate_system}, {coordinate_format})
参数 | 说明 | 数据类型 |
in_features | 将使用几何计算进行更新的带有字段的要素图层。 | Feature Layer |
geometry_property [[Target Field, Property],...] | 指定要在哪些字段中计算几何属性以及要计算的几何属性。支持以下几何属性:
| Value Table |
length_unit (可选) | 用于计算长度的单位。
| String |
area_unit (可选) | 用于计算面积的单位。
| String |
coordinate_system (可选) | 用于计算坐标、长度和面积的坐标系。默认使用输入要素的坐标系。 对于基于坐标的几何属性,仅当坐标格式与输入相同时才应用坐标系;否则,将使用地理坐标系 WGS_1984。 | Coordinate System |
coordinate_format (可选) | 将用于计算 x 和 y 坐标的坐标格式。默认情况下,将使用与输入要素的空间参考单位匹配的坐标格式。 包括“度分秒”、“十进制度分”等在内的多种坐标格式需要在文本字段中执行计算。
| String |
派生输出
名称 | 说明 | 数据类型 |
updated_features | 更新后的输入要素。 | 要素图层 |
代码示例
以下 Python 窗口脚本演示了如何使用 CalculateGeometryAttributes 工具。
import arcpy
arcpy.env.workspace = r"C:\data\City.gdb"
arcpy.CalculateGeometryAttributes_management("roads", [["Length_mi", "LENGTH"], ["Stops", "POINT_COUNT"]], "MILES_US")
获取各个要素的范围矩形。
# Name: ExtentCreation.py
# import system modules
import arcpy
# Set environment settings
arcpy.env.workspace = r"C:\data\City.gdb"
arcpy.env.outputCoordinateSystem = arcpy.Describe("roads").spatialReference
# Set local variables
in_features = "roads"
# Generate the extent coordinates using CalculateGeometry
arcpy.CalculateGeometryAttributes_management(in_features, [["Left", "EXTENT_MIN_X"],
["Bottom", "EXTENT_MIN_Y"],
["Right", "EXTENT_MAX_X"],
["Top", "EXTENT_MAX_Y"]])
许可信息
- Basic: 是
- Standard: 是
- Advanced: 是