Z 情報の追加 (Add Z Information) (3D Analyst)

サマリー

Z 対応のフィーチャクラス内のフィーチャの標高プロパティに関する情報を追加します。

各 3D シェープを調べて、選択されたプロパティを入力フィーチャクラスの属性テーブルに追加します。 出力オプションは、フィーチャのジオメトリによって異なります。

使用法

  • 次の Z プロパティが利用できます。

    フィーチャ ジオメトリZ プロパティ

    ポイント

    ポイントの Z 値。

    マルチポイント

    マルチポイント レコードのすべてのポイントにおけるポイントの数、および Z の最小値、最大値、および平均値。

    ポリラインおよびポリゴン

    ラインまたはポリゴン周長の頂点数および 3D 距離。

    ラインまたはポリゴン周長の Z の最小値、最大値、平均値、および傾斜角。

    マルチパッチ

    クローズド マルチパッチの表面積および体積。

    マルチパッチ表面の Z の最小値、最大値、平均値、および傾斜角。

  • 傾斜角はパーセント値 (グレード) として返され、傾斜角の計算方法は、このプロパティをサポートする各ジオメトリ タイプによって異なります。 値 -1 は、フィーチャが垂直であることを示します。

    • ライン フィーチャおよびポリゴン周長の傾斜角の値は、各セグメントに沿って計算されます。
      • 最小傾斜角は、値が 0 (水平グレード) に最も近いセグメントから取得されます。
      • 最大傾斜角は、最大計算値を持つセグメントから取得されます。
      • 平均傾斜角は、各セグメントを 3D 長さによって重み付けした後で、すべての線分の傾斜角を平均して取得されます。 この結果、長いセグメントは短いセグメントに比べて大きな影響を及ぼします。
    • マルチパッチ フィーチャの傾斜角の値は、各三角形のフェイスに対して計算されます。
      • 最小傾斜角は、値が 0 (水平グレード) に最も近い表面から取得されます。
      • 最大傾斜角は、最大値を持つフェイスから取得されます。
      • 平均傾斜角は、各セグメントを 3D エリアによって重み付けした後で、すべての三角形のフェイスの傾斜角を平均して取得されます。 そのため、面積が大きいほど、取得される値に大きな影響があります。
    • ポリゴン フィーチャの傾斜角の値は、ライン セグメントに適用されるのと同じ方法を使用して、エッジに沿って計算されます。
  • ポリゴン フィーチャの平均 Z 値は、ライン フィーチャと同じ方法で計算されます。 境界のみが評価されるため、ポリゴン内部は無視されます。 各セグメントの中点の Z 値に、そのセグメントの 3D 長さを乗算し、すべてのセグメントの積を加算します。 この合計をライン フィーチャまたはポリゴン境界の合計 3D 長さで除算し、結果を算出します。

  • 各マルチパッチ フィーチャの平均 Z 値を計算するには、各三角形の中点の Z 値に、その三角形の 3D 面積を乗算します。 所定のフィーチャのすべての三角形の積を加算し、その値をマルチパッチ フィーチャの 3D サーフェス面積の合計で除算し、結果を算出します。

  • 体積は、クローズド マルチパッチに対してのみ計算できます。 開いたマルチパッチ フィーチャは、0.0 の値を返します。 Solaris プラットフォーム上では現在、設計の制限により、マルチパッチが閉じているかどうかをツールが判断することができないため、すべてのマルチパッチが閉じているという前提で、すべてのマルチパッチに対して体積の計測を実行します。

パラメーター

ラベル説明データ タイプ
入力フィーチャ

処理対象の入力フィーチャ。

Feature Layer
出力プロパティ

入力フィーチャクラスの属性テーブルに追加される Z プロパティを指定します。

  • スポット Zシングルポイント フィーチャの SPOT 標高。
  • ポイント数各マルチポイント フィーチャのポイントの数。
  • 最小 Z 値各マルチポイント、ポリライン、ポリゴン、またはマルチパッチ フィーチャの Z の最小値。
  • 最大 Z 値各マルチポイント、ポリライン、ポリゴン、またはマルチパッチ フィーチャの Z の最大値。
  • 平均 Z 値各マルチポイント、ポリライン、ポリゴン、またはマルチパッチ フィーチャの Z の平均値。
  • 3D 長さ各ポリラインまたはポリゴン フィーチャの 3D 長さ。
  • 表面積マルチパッチ フィーチャの表面の総面積。
  • 頂点数各ポリラインまたはポリゴン フィーチャの頂点の総数。
  • 最小傾斜角各ポリライン、ポリゴン、またはマルチパッチ フィーチャに対して計算される最小傾斜角値。
  • 最大傾斜角各ポリライン、ポリゴン、またはマルチパッチ フィーチャに対して計算される最大傾斜角値。
  • 平均傾斜角各ポリライン、ポリゴン、またはマルチパッチ フィーチャに対して計算される平均傾斜角値。
  • 体積各マルチパッチ フィーチャで囲まれた空間容積。
String
ノイズ フィルタリング
(オプション)

生成される計算結果からフィーチャの一部を除外するために使用される数値です。 これは、3D 入力に、統計的に偏った結果になる可能性がある極端な傾斜角を含む比較的小さいフィーチャが含まれている場合に便利です。 3D 入力のリニア単位がメートルである場合、値に 0.001 を指定すると、0.001 メートルよりも短いラインやポリゴン エッジが除外されます。 マルチパッチ フィーチャでは、同じ値を使用すると、0.001 平方メートルより小さい面積を持つ部分は除外されます。 このパラメーターは、ポイントおよびマルチポイント フィーチャには適用しません。

String

派生した出力

ラベル説明データ タイプ
更新された入力フィーチャ

更新された Z 対応のフィーチャクラス。

Feature Layer

arcpy.ddd.AddZInformation(in_feature_class, out_property, {noise_filtering})
名前説明データ タイプ
in_feature_class

処理対象の入力フィーチャ。

Feature Layer
out_property
[out_property,...]

入力フィーチャクラスの属性テーブルに追加される Z プロパティを指定します。

  • Zシングルポイント フィーチャの SPOT 標高。
  • POINT_COUNT各マルチポイント フィーチャのポイントの数。
  • Z_MIN各マルチポイント、ポリライン、ポリゴン、またはマルチパッチ フィーチャの Z の最小値。
  • Z_MAX各マルチポイント、ポリライン、ポリゴン、またはマルチパッチ フィーチャの Z の最大値。
  • Z_MEAN各マルチポイント、ポリライン、ポリゴン、またはマルチパッチ フィーチャの Z の平均値。
  • LENGTH_3D各ポリラインまたはポリゴン フィーチャの 3D 長さ。
  • SURFACE_AREAマルチパッチ フィーチャの表面の総面積。
  • VERTEX_COUNT各ポリラインまたはポリゴン フィーチャの頂点の総数。
  • MIN_SLOPE各ポリライン、ポリゴン、またはマルチパッチ フィーチャに対して計算される最小傾斜角値。
  • MAX_SLOPE各ポリライン、ポリゴン、またはマルチパッチ フィーチャに対して計算される最大傾斜角値。
  • AVG_SLOPE各ポリライン、ポリゴン、またはマルチパッチ フィーチャに対して計算される平均傾斜角値。
  • VOLUME各マルチパッチ フィーチャで囲まれた空間容積。
String
noise_filtering
(オプション)

生成される計算結果からフィーチャの一部を除外するために使用される数値です。 これは、3D 入力に、統計的に偏った結果になる可能性がある極端な傾斜角を含む比較的小さいフィーチャが含まれている場合に便利です。 3D 入力のリニア単位がメートルである場合、値に 0.001 を指定すると、0.001 メートルよりも短いラインやポリゴン エッジが除外されます。 マルチパッチ フィーチャでは、同じ値を使用すると、0.001 平方メートルより小さい面積を持つ部分は除外されます。 このパラメーターは、ポイントおよびマルチポイント フィーチャには適用しません。

String

派生した出力

名前説明データ タイプ
output_feature_class

更新された Z 対応のフィーチャクラス。

Feature Layer

コードのサンプル

AddZInformation の例 1 (Python ウィンドウ)

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

arcpy.env.workspace = 'C:/data'
arcpy.ddd.AddZInformation('lines_3D.shp', 'Z_MEAN; LENGTH_3D; AVG_SLOPE', 
                        'NO_FILTER')
AddZInformation の例 2 (スタンドアロン スクリプト)

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

'''******************************************************************
Name: AddZInformation Example
Description: This script demonstrates AddZInformation on all 
             z-aware features in a target workspace.
******************************************************************'''
# Import system modules
import arcpy

# Set environment settings
arcpy.env.workspace = 'C:/data'
# Create list of feature classes
fcList = arcpy.ListFeatureClasses()
if fcList:
    for fc in fcList:
        desc = arcpy.Describe(fc)
        if desc.hasZ:
            # Set Local Variables
            noise = 'No_Filter'
            if desc.shapeType == 'Polygon':
                Prop = ['Z_MIN', 'Z_MAX', 'VERTEX_COUNT']
            elif desc.shapeType == 'Point':
                Prop = 'Z'
            elif desc.shapeType == 'Multipoint':
                Prop = ['Z_MIN', 'Z_MAX', 'Z_MEAN']
            elif desc.shapeType == 'Polyline':
                Prop = 'LENGTH_3D'
            print('Completed adding Z information.')
            # Execute AddZInformation
            arcpy.ddd.AddZInformation(inFC, Prop, noise)

ライセンス情報

  • Basic: Yes
  • Standard: Yes
  • Advanced: Yes

関連トピック