概要
天空の可視領域を計算し、オプションでテーブルと極座標グラフを生成します。
テーブルとグラフは、観測点からスカイラインの各頂点に向かう水平角と対頂角を表します。
図
使用法
各観測ポイントからスカイラインの各頂点への方位角と対頂角が評価されます。[出力角度テーブル] を指定することで、その方位角と対頂角をスタンドアロン テーブルにエクスポートできます。このテーブルには、次のフィールドが存在します。
- HORIZ_ANG - 水平角。
- ZENITH_ANG - 天頂角。
[追加フィールド] が選択されている場合は、次のフィールドも存在します。
- FEATURE_ID - 観測ポイントの天空の眺望を妨げるスカイライン フィーチャ
- VERTEX_X - 頂点の X 座標。
- VERTEX_Y - 頂点の Y 座標。
- VERTEX_Z - 頂点の Z 座標。
- DIST_2D - 観測ポイントから頂点までの水平距離。
- DIST_3D - 観測ポイントから頂点までの傾斜距離。
数学座標の水平角は、90 から方位角を引いた値に等しくなります。また、天頂角は 90 から対頂角を引いた値です。数学座標の水平角は、0 で東、90 で北を表します。天頂角は、90 で水平、0 で真上を表します。
- 天空の可視領域の割合は、常に結果に表示されます。この値は、スカイラインより上の面積をベース表示角度より上の面積で割った値に等しく、スカイラインの方位角範囲内のみで計算されます (ベース表示角度はパラメーターの 1 つで、デフォルト値の 0 は観測ポイントと同じ標高を表します)。
構文
arcpy.3d.SkylineGraph(in_observer_point_features, in_line_features, {base_visibility_angle}, {additional_fields}, {out_angles_table}, {out_graph})
パラメーター | 説明 | データ タイプ |
in_observer_point_features | 1 つ以上の観測点を含む入力フィーチャ。 | Feature Layer |
in_line_features | スカイラインを表すライン フィーチャ。 | Feature Layer |
base_visibility_angle (オプション) | 天空の可視領域の割合を計算する際に使用するベースライン対頂角。0 は水平を表し、90 は真上を表します。また、-90 は真下を表します。デフォルトは 0 です。 | Double |
additional_fields (オプション) | 角度テーブルに他のフィールドを追加するかどうかを示します。
| Boolean |
out_angles_table (オプション) | 角度を出力するために作成するテーブル。 | Table |
out_graph (オプション) |
このパラメーターはサポートされていません。 | Graph |
派生した出力
名前 | 説明 | データ タイプ |
out_visibility_ratio | すべての観測ポイントにおける天空の可視領域の平均比率。この値は 0 ~ 1 で表されます。たとえば、0.8 はスカイラインの 80 % の可視性を表します。 | Double (倍精度浮動小数点数) |
コードのサンプル
次のサンプルは、Python ウィンドウでこのツールを使用する方法を示しています。
arcpy.env.workspace = "C:/data"
arcpy.SkylineGraph_3d("observers.shp", "skyline_outline.shp", 0,
"ADDITIONAL_FIELDS", "table.dbf")
次のサンプルは、スタンドアロン Python スクリプトでこのツールを使用する方法を示しています。
'''****************************************************************************
Name: Skyline Example
Description: This script demonstrates how to use the
Skyline tool.
****************************************************************************'''
# Import system modules
import arcpy
# Set environment settings
arcpy.env.workspace = 'C:/data'
# Set Local Variables
inPts = "observers.shp"
inLines = "skyline_outline.shp"
baseVisibility = 25
# Ensure output table has unique name
outTable = arcpy.CreateUniqueName("angles_table.dbf")
#Execute SkylineGraph
arcpy.SkylineGraph_3d(inPts, inLines, 0, "ADDITIONAL_FIELDS", outTable)
環境
ライセンス情報
- Basic: 次のものが必要 3D Analyst
- Standard: 次のものが必要 3D Analyst
- Advanced: 次のものが必要 3D Analyst