概要
3D フィーチャとサーフェスの任意の組み合わせによって定義される潜在的な障害物に対する、見通し線の可視性を判断します。
使用法
このツールは、新しいフィールドを追加するか、既存のフィールドを更新することで、入力見通し線を変更します。[表示可能なフィールド名] パラメーターで、フィールド名を指定できます。フィールド値は、見通し線が表示可能な場合は 1、妨げられる場合は 0 になります。入力フィーチャへの書き込みアクセス権を持っていない場合、または入力データを変更したくない場合は、このツール用に入力のコピーを作成します。詳しい説明および不適切なデータの変更を防ぐための方法については、「出力を伴わないツール」をご参照ください。
-
観測点と目標点の定義には、入力ラインの端点のみが使用されます。見通し線は、見通しを決定する対象の観測点と目標点を表す 2 つの頂点のみで構成される直線であることが理想的です。
-
ポイント フィーチャによって観測点の位置が定義され、別のフィーチャクラスに格納されたデータによって可視性の目標点が表される場合は、[見通し線の構築 (Construct Sight Lines)] ツールを使用することを検討してください。
すべての入力が同じ空間参照を使用している場合、ツールの実行速度は速くなります。これは、障害物の有無を確認するためにデータを投影する (複数回の場合あり) 必要がないからです。すべての障害物が同じ空間参照を使用している場合に特に効果があります。見通し線の空間参照は、簡単に投影できるため、それほど重要ではありません。
- 非可視の見通し線に対する障害の位置を特定したい場合は、[見通し (Line of Sight)] ツールを使用することを検討してください。
構文
arcpy.ddd.Intervisibility(sight_lines, obstructions, {visible_field})
パラメーター | 説明 | データ タイプ |
sight_lines | 3D 見通し線。 | Feature Layer |
obstructions [obstructions,...] | 見通し線を妨げる可能性のあるマルチパッチ フィーチャおよびサーフェス。ポリゴンまたはライン フィーチャ レイヤーに基準高度および立ち上げプロパティが定義されている場合は、そのレイヤーを指定できます。 | Feature Layer; Mosaic Layer; Raster Layer; TIN Layer |
visible_field (オプション) | 可視性の結果を格納するフィールドの名前です。生成結果が 0 の場合、見通し線の開始点および終点はお互いに不可視です。生成結果が 1 の場合、見通し線の開始点および終点はお互いに可視です。デフォルトのフィールド名は、VISIBLE です。フィールドがすでに存在する場合、その値は上書きされます。 | String |
派生した出力
名前 | 説明 | データ タイプ |
out_feature_class | 更新された 3D 見通し線。 | フィーチャ レイヤー |
コードのサンプル
Intervisibility (内部可視性) の例 1 (Python ウィンドウ)
次のサンプルは、Python ウィンドウでこのツールを使用する方法を示しています。
import arcpy
arcpy.env.workspace = "C:/data"
arcpy.Intervisibility_3d("sightlines.shp", ["3dbuildings.shp", "topo_tin"], "Visibility")
Intervisibility (内部可視性) の例 2 (スタンドアロン スクリプト)
次のサンプルは、スタンドアロン Python スクリプトでこのツールを使用する方法を示しています。このスクリプトは、サーフェスおよび建物フィーチャの障害物に対して、観測点とターゲット ラインから構築された見通し線の内部可視性を計算する方法を示しています。
# Import system modules
import arcpy
# Set environments
arcpy.env.workspace = 'C:/data'
print("Constructing Sightlines")
arcpy.ddd.ConstructSightLines("Observers.shp", "Targets.shp", "sightlines.shp",
observer_height_field='Shape.Z', target_height_field='Shape.Z')
print("Calculating Intervisibility")
arcpy.ddd.Intervisibility("Sightlines.shp", obstructions=["DTM_Tin", "data.gdb/buildings"],
visible_field="Visibility")
環境
ライセンス情報
- Basic: 次のものが必要 3D Analyst
- Standard: 次のものが必要 3D Analyst
- Advanced: 次のものが必要 3D Analyst