Z 情報の追加(Add Z Information) (3D Analyst)
サマリ
Z 対応のフィーチャクラス内のフィーチャの標高プロパティに関する情報を追加します。
各 3D シェープを調べて、選択されたプロパティを入力フィーチャクラスの属性テーブルに追加します。出力オプションは、フィーチャのジオメトリによって異なります。
使用法
-
次の Z プロパティが利用できます。
- ポイント - Z
- マルチポイント - 最小 Z 値、最大 Z 値、平均 Z 値、ポイント数
- ポリライン - 最小 Z 値、最大 Z 値、平均 Z 値、3D 長さ、最小傾斜角、最大傾斜角、平均傾斜角、頂点数
- ポリゴン - 最小 Z 値、最大 Z 値、平均 Z 値、3D 長さ、最小傾斜角、最大傾斜角、平均傾斜角、頂点数
- マルチパッチ - 最小 Z 値、最大 Z 値、サーフェス面積、体積、最小傾斜角、最大傾斜角、平均傾斜角
-
傾斜角はパーセント値(グレード)として返され、傾斜角の計算方法は、このプロパティをサポートする各ジオメトリ タイプによって異なります。
- ライン フィーチャの傾斜角の値は、各線分に対して計算されます。
- 最小傾斜角は、値が 0(水平グレード)に最も近いセグメントから取得されます。
- 最大傾斜角は、最大計算値を持つセグメントから取得されます。
- 平均傾斜角は、各セグメントを 3D 長さによって重み付けした後で、すべての線分の傾斜角を平均して取得されます。この結果、長いセグメントは短いセグメントに比べて大きな影響を及ぼします。
- マルチパッチ フィーチャの傾斜角の値は、各三角形のフェイスに対して計算されます。
- 最小傾斜角は、値が 0(水平グレード)に最も近いフェイスから取得されます。
- 最大傾斜角は、最大値を持つフェイスから取得されます。
- 平均傾斜角は、各セグメントを 3D 面積によって重み付けした後で、すべての三角形のフェイスの傾斜角を平均して取得されます。そのため、面積が大きいほど、取得される値に大きな影響があります。
- ポリゴン フィーチャの傾斜角の値は、ライン セグメントに適用されるのと同じ方法を使用して、エッジに沿って計算されます。
- ライン フィーチャの傾斜角の値は、各線分に対して計算されます。
体積は、クローズド マルチパッチに対してのみ計算できます。開いたマルチパッチ フィーチャは、0.0 の値を返します。Solaris プラットフォーム上では現在、設計の制限により、マルチパッチが閉じているかどうかをツールが判断することができないため、すべてのマルチパッチが閉じているという前提で、すべてのマルチパッチに対して体積の計測を実行します。
構文
AddZInformation_3d (in_feature_class, out_property, {noise_filtering})
パラメータ | 説明 | データ タイプ |
in_feature_class |
入力フィーチャクラス。 | Feature Layer |
out_property [out_property,...] | 入力フィーチャクラスの属性テーブルに追加される Z プロパティ。次のオプションを利用できます。
| String |
noise_filtering (オプション) |
フィーチャの一部を除外して統計情報を計算するオプションを提供します。このオプションは、最大傾斜角を正しく推定するのに役立ちます。それは、一部が極端な傾斜になっていることが多く、そのために計算結果が歪むことがあるからです。 AREA(面積)または LENGTH(長さ)の値を指定して、フィーチャの一部を除外できます。このパラメータは、ポイントおよびマルチポイント フィーチャには適用しません。
| String |
コードのサンプル
AddZInformation(Z 情報の追加)の例 1(Python ウィンドウ)
次のサンプルは、Python ウィンドウでこのツールを使用する方法を示しています。
import arcpy
from arcpy import env
arcpy.CheckOutExtension('3D')
env.workspace = 'C:/data'
arcpy.AddZInformation_3d('lines_3D.shp', 'Z_MEAN; LENGTH_3D; AVG_SLOPE',
'NO_FILTER')
AddZInformation(Z 情報の追加)の例 2(スタンドアロン スクリプト)
次のサンプルは、スタンドアロン Python スクリプトでこのツールを使用する方法を示しています。
'''******************************************************************
Name: AddZInformation Example
Description: This script demonstrates AddZInformation on all
z-aware features in a target workspace.
******************************************************************'''
# Import system modules
import arcpy
import exceptions, sys, traceback
from arcpy import env
try:
arcpy.CheckOutExtension('3D')
# Set environment settings
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.AddZInformation_3d(inFC, Prop, noise)
arcpy.CheckInExtension('3D')
except arcpy.ExecuteError:
print arcpy.GetMessages()
except:
# Get the traceback object
tb = sys.exc_info()[2]
tbinfo = traceback.format_tb(tb)[0]
# Concatenate error information into message string
pymsg = 'PYTHON ERRORS:\nTraceback info:\n{0}\nError Info:\n{1}'\
.format(tbinfo, str(sys.exc_info()[1]))
msgs = 'ArcPy ERRORS:\n {0}\n'.format(arcpy.GetMessages(2))
# Return python error messages for script tool or Python Window
arcpy.AddError(pymsg)
arcpy.AddError(msgs)
環境
関連トピック
ライセンス情報
ArcGIS for Desktop Basic: 次のものが必要 3D Analyst
ArcGIS for Desktop Standard: 次のものが必要 3D Analyst
ArcGIS for Desktop Advanced: 次のものが必要 3D Analyst
9/14/2013