调整 3D Z 值 (数据管理)
摘要
可用于对启用 Z 值的要素类中的所有 Z 值进行修改。
用法
-
海洋测深学数据通常具有正 Z 值。您可能希望将要素类中所有数据的符号取反以生成负 Z 值。
-
不适用于您的地理处理需求的垂直基准面可能会引用启用 Z 值的数据。此工具可应用要素类中所有 Z 值的批量平移,从而沿垂直方向向上或向下调整数据。
-
转换自单位和转换至单位参数用于将 Z 值从一个常用测量单位转换到另一个常用测量单位。
警告:
此工具用于修改输入数据。有关详细信息以及避免数据被意外更改的策略,请参阅无输出的工具。
语法
Adjust3DZ_management (in_features, {reverse_sign}, {adjust_value}, {from_units}, {to_units})
参数 | 说明 | 数据类型 |
in_features |
SHAPE 字段中包含 Z 值的输入要素类。 | Feature Layer |
reverse_sign (可选) |
对要素类中的所有 Z 值的符号进行翻转。
| String |
adjust_value (可选) |
应用于所有 Z 值的值。要减小整个要素类的 Z 值,请输入一个负数。要增大整个要素类的 Z 值,请输入一个正数。 | Double |
from_units (可选) |
现有的 Z 值单位。此参数与“转换至单位”参数结合使用。
| String |
to_units (可选) |
转换后的单位。
| String |
代码示例
Adjust3DZ 示例 1(Python 窗口)
以下 Python 窗口脚本演示了如何在立即模式下使用 Adjust3DZ 函数。
import arcpy from arcpy import env arcpy.CheckOutExtension("3D") env.workspace = "C:/data" arcpy.Adjust3DZ_management("subsurface_pts.shp", "REVERSE", 0, "METERS", "FEET")
Adjust3DZ 示例 2(独立脚本)
以下 Python 脚本演示了如何在独立脚本中使用 Adjust3DZ 函数。
# Name: Adjust3DZ Example # Description: The following stand-alone script demonstrates how to use the # Adjust3DZ tool to modify the z-values of points, lines, and # polygons in the specified workspace. # Requirements: 3D Analyst extension # Author: ESRI # Import system modules import arcpy from arcpy import env # Obtain a license for the 3D Analyst extension arcpy.CheckOutExtension("3D") # Set environment settings env.workspace = "C:/data" try: # Create a list of feature classes in the workspace fcList = arcpy.ListFeatureClasses() # Determine if the list contains any feature classes if len(fcList) > 0: # Loop through each feature class for fc in fcList: # Describe the feature class desc = arcpy.Describe(fc) # Evaluate if the feature class is z-aware if desc.hasZ is True: # Evaluate the geometry of the feature # Convert polyline z values from meters to feet if desc.shapeType is "Polyline": # Set Local Variables rev = "NO_REVERSE" startUnits = "Meters" endUnits = "Feet" arcpy.AddMessage("Converting units of " + fc + " from meters to feet.") #Execute Adjust3DZ arcpy.Adjust3DZ_management(fc, 0, startUnits, endUnits) # Shift polygon z-values by a value of 3 if desc.shapeType is "Polygon": # Set Local Variables rev = "NO_REVERSE" arcpy.AddMessage("Shifting the z-value of " + fc +".") #Execute Adjust3DZ arcpy.Adjust3DZ_management(fc, rev) del desc, rev else: arcpy.AddMessage("There are no feature classes in the workspace.") del fcList except Exception as e: # Returns any other error messages print e.message del arcpy
相关主题
许可信息
ArcView: 是
ArcEditor: 是
ArcInfo: 是
7/10/2012