最小バウンディング ボリューム (Minimum Bounding Volume) (3D Analyst)

概要

一連の 3D フィーチャが占有する空間容積を表すマルチパッチ フィーチャを作成します。

最小バウンディング ボリューム (Minimum Bounding Volume)

使用法

  • [球体] または [エンベロープ] 手法 (Python では geometry_type="SPHERE" または geometry_type = "ENVELOPE") により、一連の 3D フィーチャが占有する空間容積を簡単に表現できます。

  • [凸包] オプション (Python では geometry_type="CONVEX_HULL") では [球体] または [エンベロープ] 手法よりも詳細な結果が得られますが、入力フィーチャ内の局所的なくぼみが取得されません。

  • [凹包] オプション (Python では geometry_type="CONCAVE_HULL") では、バウンディング ボリュームの形状に関して非常に詳細な結果が得られますが、計算負荷が高いため、大量の入力データがある場合は使用しないでください。

  • 結果の最小バウンディング ボリュームが入力フィーチャのグループを表す場合、入力の分割に使用されるフィールドが結果のマルチパッチに追加されます。最小バウンディング ボリュームにジオメトリ特性が含まれている場合、次のフィールドが出力フィーチャに追加されます。

    • MBV_Area - 最小バウンディング ボリュームのサーフェス エリアの合計。
    • MBV_Volume - マルチパッチ フィーチャに格納される空間容積の合計。

構文

arcpy.3d.MinimumBoundingVolume(in_features, z_value, out_feature_class, {geometry_type}, {group}, {group_field}, {mbv_fields})
パラメーター説明データ タイプ
in_features

最小バウンディング ボリュームが評価される LAS データセットまたは 3D フィーチャ。

LAS Dataset Layer; Feature Layer
z_value

入力データの Z 値のソース。

Field
out_feature_class

このツールで生成されるフィーチャクラス。

Feature Class
geometry_type
(オプション)

最小バウンディング ボリュームのジオメトリの特定に使用される方法を指定します。

  • CONVEX_HULL入力データを囲む最小の凸領域。
  • SPHERE入力データを囲む最小の球体。
  • ENVELOPE入力データの XYZ 範囲。
  • CONCAVE_HULL入力データを囲む凹包。
String
group
(オプション)

各グループを 1 つの出力マルチパッチで囲む入力フィーチャを、どのようにグループ化するかについて指定します。

  • NONE入力フィーチャをグループ化しません。これがデフォルトです。このオプションは、ポイントの入力では使用不可になります。
  • ALLすべての入力フィーチャを 1 つのグループとして扱います。
  • LISTグループ フィールド パラメーターで指定したフィールド (1 つまたは複数) 内の共通値に基づいて、入力フィーチャをグループ化します。
String
group_field
[group_field,...]
(オプション)

group_option として LIST を指定した場合に、フィーチャをグループ化する際に使用される入力フィーチャ内のフィールド (1 つまたは複数)。LIST オプションを使用するには、少なくとも 1 つのグループ フィールドを指定する必要があります。指定したフィールド (1 つまたは複数) 内の値が同じフィーチャ同士はそれぞれ、グループとして扱われます。

Field
mbv_fields
(オプション)

出力マルチパッチ フィーチャクラスにジオメトリ属性を追加するかどうかを指定します。

  • NO_MBV_FIELDSジオメトリ属性は出力フィーチャに追加されません。これがデフォルトです。
  • MBV_FIELDSジオメトリ属性が出力フィーチャに追加されます。
Boolean

コードのサンプル

MinimumBoundingVolume (最小バウンディング ボリューム) の例 1 (Python ウィンドウ)

次のサンプルは、Python ウィンドウでこのツールを使用する方法を示しています。

arcpy.env.workspace = 'C:/data'
arcpy.ddd.MinimumBoundingVolume('tree_canopy.shp', 'Shape.Z', 
                                'canopy_volume.shp', 'CONCAVE_HULL',
                                group='List', group_field='Season'
                                mbv_fields='MBV_FIELDS')
MinimumBoundingVolume (最小バウンディング ボリューム) の例 2 (スタンドアロン スクリプト)

次のサンプルは、スタンドアロン Python スクリプトでこのツールを使用する方法を示しています。

'''****************************************************************************
Name: Detect Periods of Activity
Description: 
****************************************************************************'''
# Import system modules
import arcpy
import tempfile
import math

in_features = arcpy.GetParameterAsText(0)
out_volume = arcpy.GetParameterAsText(1)
grouping_field = arcpy.GetParameterAsText(2)


try:
    arcpy.MinimumBoundingVolume_3d(in_features, 'Shape.Z', out_volume, 
                                   'CONCAVE_HULL','LIST', group_field)

except arcpy.ExecuteError:
    print(arcpy.GetMessages())

ライセンス情報

  • Basic: 次のものが必要 3D Analyst
  • Standard: 次のものが必要 3D Analyst
  • Advanced: 次のものが必要 3D Analyst

関連トピック