摘要
计算面和 terrain 或 TIN 表面之间的体积和表面积。
用法
只计算输入面和 TIN 或 terrain 数据集表面的叠置部分。
首先,面的各边界将与表面的内插区相交。这会确定两者之间的公共区域。然后,为所有三角形及其落在相交面内的部分计算体积和表面积。
体积表示表面与面要素上方或下方(根据参考平面参数中的选择)空间之间的区域:
- 在平面上方计算 - 计算平面与表面下侧之间的体积。
- 在平面下方计算 - 计算平面与表面上侧之间的体积。此外,还会计算同一表面部分的表面积。
语法
PolygonVolume_3d (in_surface, in_feature_class, in_height_field, {reference_plane}, {out_volume_field}, {surface_area_field}, {pyramid_level_resolution})
参数 | 说明 | 数据类型 |
in_surface | 要评估的 terrain 或 TIN 表面。 | Tin Layer; Terrain Layer |
in_feature_class | 用来确定待处理的表面区域的面要素。 | Feature Layer |
in_height_field | 面属性表中的字段,用于定义确定体积计算中使用的参考平面高度。 | String |
reference_plane (可选) | 确定如何计算体积和表面积。
| String |
out_volume_field (可选) | 指定体积计算所属字段的名称。默认值为 Volume。 | String |
surface_area_field (可选) | 指定表面积计算所属字段的名称。默认值为 SArea。 | String |
pyramid_level_resolution (可选) | 此工具将使用 terrain 金字塔等级的 z 容差或窗口大小分辨率。默认值为 0(z 容差),或全分辨率(窗口大小)。 | Double |
代码示例
面体积 (PolygonVolume) 示例 1(Python 窗口)
下面的示例演示了如何在 Python 窗口中使用此工具。
import arcpy
from arcpy import env
arcpy.CheckOutExtension("3D")
env.workspace = "C:/data"
arcpy.PolygonVolume_3d("sample.gdb/featuredataset/terrain", "polygon.shp", "<None>", "ABOVE", "Volume", "SArea", "5")
面体积 (PolygonVolume) 示例 2(独立脚本)
下面的示例演示了如何在独立 Python 脚本中使用此工具。
'''****************************************************************************
Name: PolygonVolume Example
Description: This script demonstrates how to use the
PolygonVolume tool.
****************************************************************************'''
# Import system modules
import arcpy
from arcpy import env
# Obtain a license for the ArcGIS 3D Analyst extension
arcpy.CheckOutExtension("3D")
# Set environment settings
env.workspace = "C:/data"
# Set Local Variables
inSurface = "sample.gdb/featuredataset/terrain"
inPoly = "floodplain_100.shp"
zField = "Height"
refPlane = "BELOW"
volFld = "Volume"
sAreaFld = "SArea"
#Execute PolygonVolume
arcpy.PolygonVolume_3d(inSurface, inPoly, zField, refPlane, volFld, sAreaFld)
环境
许可信息
- ArcGIS Desktop Basic: 需要 3D Analyst
- ArcGIS Desktop Standard: 需要 3D Analyst
- ArcGIS Desktop Advanced: 需要 3D Analyst