调整 3D Z 值 (数据管理)

摘要

可用于对启用 Z 值的要素类中的所有 Z 值进行修改。

用法

语法

Adjust3DZ_management (in_features, {reverse_sign}, {adjust_value}, {from_units}, {to_units})
参数说明数据类型
in_features

SHAPE 字段中包含 Z 值的输入要素类。

Feature Layer
reverse_sign
(可选)

对要素类中的所有 Z 值的符号进行翻转。

  • REVERSE反向(取反)Z 值。
  • NO_REVERSE不反向(取反)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