概要
サーフェスを使用して、3D フィーチャの頂点の Z 座標を更新します。
使用法
入力サーフェス全体にオーバーラップするフィーチャの頂点のみが更新されます。サーフェスにオーバーラップしないフィーチャはスキップされます。
メモ:
特定の頂点について得られた Z 値がジオデータベースのフィーチャの空間参照 Z ドメインの外部にある場合、頂点の Z 値は更新されません。影響を受けるフィーチャを処理するには、入力フィーチャのコピーを作成して、適切な Z ドメインを指定します。
構文
arcpy.3d.UpdateFeatureZ(in_features, in_surface, {method}, {status_field})
パラメーター | 説明 | データ タイプ |
in_features | 変更対象の頂点の Z 値を持つ 3D フィーチャ。 | Feature Layer |
in_surface | 3D フィーチャの頂点の新しい Z 値を決定するために使用されるサーフェス。 | LAS Dataset Layer; Mosaic Layer; Raster Layer; TIN Layer |
method (オプション) | サーフェスに関する情報の決定に使用される内挿法。利用できるオプションは、入力サーフェスのデータ タイプによって異なります。
| String |
status_field (オプション) | フィーチャの頂点が正常に更新されたかどうかを反映する値が入力される既存の数値フィールド。更新されたフィーチャの場合は値 1、更新されないフィーチャの場合は 0 が指定されます。サーフェスの一部にオーバーラップするフィーチャは更新されません。 | Field |
派生した出力
名前 | 説明 | データ タイプ |
out_feature_class | 頂点の Z 値が変更された、更新された 3D フィーチャ。 | フィーチャ レイヤー |
コードのサンプル
次のサンプルは、Python ウィンドウでこのツールを使用する方法を示しています。
arcpy.env.workspace = 'C:/data'
arcpy.UpdateFeatureZ_3d('lines_3d.shp', 'dsm.tif', status_field='Updated')
次のサンプルは、スタンドアロン Python スクリプトでこのツールを使用する方法を示しています。
'''****************************************************************************
Name: Update Antenna Positions
Description: Updates antenna positions based on elevations from a surface.
****************************************************************************'''
# Import system modules
import arcpy
in_fc = arcpy.GetParameterAsText(1) # pt features representing antenna locations
surface = arcpy.GetParameterAsText(2) # surface used to modify feature Z values
try:
if arcpy.Describe(surface).dataType in ('Raster', 'RasterLayer'):
method = 'BILINEAR'
else:
method = 'CONFLATE_ZMAX'
arcpy.ddd.UpdateFeatureZ(in_fc, surface, method)
except arcpy.ExecuteError:
print(arcpy.GetMessages())
環境
ライセンス情報
- Basic: 次のものが必要 3D Analyst
- Standard: 次のものが必要 3D Analyst
- Advanced: 次のものが必要 3D Analyst