标注 | 说明 | 数据类型 |
要素类
| 将要更新的 shapefile 或地理数据库要素类。 | Feature Layer |
派生输出
标注 | 说明 | 数据类型 |
已更新的要素类 | 已更新的要素类。 | 要素类 |
可基于要素类中的各个要素重新计算要素类的 XY、Z 和 M 范围属性。
要素类的空间范围取决于要素类中的所有坐标。要重新居中且显示范围内的所有要素而向地图中添加要素类时,将会使用空间范围。要素类的范围属性将包含上一个已知空间范围,而不会在每次向地图中添加要素类时检查此要素类中的每一个要素(这个过程可能会很长)。但是,在对要素类中的要素进行编辑时,将不会始终更新此范围属性。这意味着范围属性中的值可能不包含要素的实际空间范围。如果执行此工具,则会读取所有要素并更新范围属性。
XY、Z 和 M 范围与空间参考域有所不同。空间参考中的 XY、Z 和 M 域用于定义可存储在要素类中的坐标值的有效范围。要素类范围反映了存在于要素类中的坐标值的实际范围。这些范围不能大于域。
重新计算要素类范围将更新地理数据库要素类或 shapefile(点、多点、线或面)。
在企业级地理数据库中,范围是要素类方案的属性,需要执行独占方案锁。
如果在将企业级地理数据库要素类作为输入的情况下使用此工具,则将根据该要素类中所有版本的要素计算范围。除非在数据库已压缩后运行此工具,否则范围不会扩充或缩减。
如果您不具备编辑要素类的权限,则此工具将失败。
重新计算要素类范围的操作无法撤销。
范围的值将通过 arcpy.Describe 函数的 extent 属性返回。
此工具会修改输入数据。有关详细信息以及避免数据被意外更改的策略,请参阅无输出的工具。
标注 | 说明 | 数据类型 |
要素类
| 将要更新的 shapefile 或地理数据库要素类。 | Feature Layer |
标注 | 说明 | 数据类型 |
已更新的要素类 | 已更新的要素类。 | 要素类 |
arcpy.management.RecalculateFeatureClassExtent(in_features)
名称 | 说明 | 数据类型 |
in_features | 将要更新的 shapefile 或地理数据库要素类。 | Feature Layer |
名称 | 说明 | 数据类型 |
out_features | 已更新的要素类。 | 要素类 |
以下 Python 窗口脚本演示了如何在即时模式下使用 RecalculateFeatureClassExtent 工具。它将重新计算要素类的 XY、M 或 Z 范围。
import arcpy
feature_class = r"C:\Data\europe.gdb\norway_cities"
arcpy.RecalculateFeatureClassExtent_management(feature_class)