面体积 (3D Analyst)

摘要

计算高度恒定的面和表面之间的体积和表面面积。

使用情况

  • 首先,每个面均将与表面相交。 然后将对所有表面三角形和落在相交面内的三角形部分进行体积和表面计算。 如果基于范围的计算可以满足您的需求,则可以使用表面体积 工具,以尽快获得结果。

  • 表面区域表示高于或低于面要素高度的表面部分。 体积表示表面与面要素高度上方或下方空间之间的区域。 当在平面上方进行计算时,体积表示平面和表面下侧之间的区域。 当在平面下方进行计算时,体积表示平面和表面上侧之间的区域。

  • 输入表面被评估为不规则三角网 (TIN)。 通过从 LAS 数据集构建 TIN,将 LAS 数据集作为表面进行处理。 由于 LAS 数据集通常包含大量点,因此当输入面覆盖大量点时,用于分析的中间表面的构造可能需要大量时间来进行处理。 在这种情况下,您可以使用 LAS 数据集转 TIN 工具从 LAS 数据集中导出细化的 TIN。

参数

标注说明数据类型
输入表面

将处理的 TIN、terrain 或 LAS 数据集表面。

LAS Dataset Layer; Terrain Layer; TIN Layer
输入面

定义正在处理的区域的面要素。

Feature Layer
高度字段

面属性表中的字段,用于定义确定体积计算中将使用的参考平面高度。

String
参考平面
(可选)

指定要计算体积和表面积的参考平面的方向。

  • 在平面上方计算将计算面的参考平面高度以上的体积和表面积。
  • 在平面下方计算将计算面的参考平面高度以下的体积和表面积。 这是默认设置。
  • 在平面上方和下方进行计算将计算面的参考平面高度以上和以下的体积和表面积。
String
体积字段
(可选)

体积计算所属字段的名称。 默认设置为 Volume

String
表面积字段
(可选)

表面积计算所属字段的名称。 默认设置为 SArea

String
金字塔等级分辨率
(可选)

将使用 terrain 金字塔等级的 z 容差或窗口大小分辨率。 默认值为 0,或全分辨率。

Double
体积字段
(可选)

将包含在面高度上方计算的体积的字段名称。 默认设置为 Above_Vol

String
体积字段
(可选)

将包含在面高度下方计算的体积的字段名称。 默认设置为 Below_Vol

String
上方表面积字段
(可选)

将包含在面高度上方计算的表面积的字段名称。 默认设置为 Above_SA

String
下方表面积字段
(可选)

将包含在面高度下方计算的表面积的字段名称。 默认设置为 Below_SA

String

派生输出

标注说明数据类型
输出要素类

要更新的输出要素。

Feature Layer

arcpy.ddd.PolygonVolume(in_surface, in_feature_class, in_height_field, {reference_plane}, {out_volume_field}, {surface_area_field}, {pyramid_level_resolution}, {out_volume_above_field}, {out_volume_below_field}, {surface_area_above_field}, {surface_area_below_field})
名称说明数据类型
in_surface

将处理的 TIN、terrain 或 LAS 数据集表面。

LAS Dataset Layer; Terrain Layer; TIN Layer
in_feature_class

定义正在处理的区域的面要素。

Feature Layer
in_height_field

面属性表中的字段,用于定义确定体积计算中将使用的参考平面高度。

String
reference_plane
(可选)

指定要计算体积和表面积的参考平面的方向。

  • ABOVE将计算面的参考平面高度以上的体积和表面积。
  • BELOW将计算面的参考平面高度以下的体积和表面积。 这是默认设置。
  • BOTH将计算面的参考平面高度以上和以下的体积和表面积。
String
out_volume_field
(可选)

体积计算所属字段的名称。 默认设置为 Volume

String
surface_area_field
(可选)

表面积计算所属字段的名称。 默认设置为 SArea

String
pyramid_level_resolution
(可选)

将使用 terrain 金字塔等级的 z 容差或窗口大小分辨率。 默认值为 0,或全分辨率。

Double
out_volume_above_field
(可选)

将包含在面高度上方计算的体积的字段名称。 默认设置为 Above_Vol

String
out_volume_below_field
(可选)

将包含在面高度下方计算的体积的字段名称。 默认设置为 Below_Vol

String
surface_area_above_field
(可选)

将包含在面高度上方计算的表面积的字段名称。 默认设置为 Above_SA

String
surface_area_below_field
(可选)

将包含在面高度下方计算的表面积的字段名称。 默认设置为 Below_SA

String

派生输出

名称说明数据类型
output_feature_class

要更新的输出要素。

Feature Layer

代码示例

PolygonVolume 示例 1(Python 窗口)

下面的示例演示了如何在 Python 窗口中使用此工具。

arcpy.env.workspace = "C:/data"
arcpy.ddd.PolygonVolume("sample.gdb/featuredataset/terrain", "cut_off_plane.shp", 
                       in_height_field="Z", reference_plane="ABOVE", 
                       pyramid_level_resolution="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

# 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.ddd.PolygonVolume(inSurface, inPoly, zField, refPlane, volFld, sAreaFld)

相关主题