ラベル | 説明 | データ タイプ |
入力ラスター | 入力サーフェス ラスター。 | Raster Layer |
入力観測ポイント、またはライン フィーチャ | 観測位置を指定するフィーチャクラス。 入力には、ポイント フィーチャまたはポリライン フィーチャを使用できます。 | Feature Layer |
出力ラスター | 出力ラスター。 出力には、入力された観測位置から入力サーフェス ラスターの各セル位置を見通せる回数が記録されるか (頻度解析タイプ)、ラスター サーフェス位置の各セルから見通せる観測点の位置が記録されます (観測点タイプ オプション)。 | Raster Dataset |
出力 AGL (地上レベル) ラスター (オプション) | 出力 AGL (Above Ground Level) ラスター。 AGL の出力は、見えないセルが 1 つ以上の観測点から見えるようにするためにセルに追加する必要がある最小の高さで各セルの値が構成されるラスターとなります。 この出力ラスターでは、すでに見通せるセルには値 0 が設定されます。 | Raster Dataset |
解析タイプ (オプション) | 可視領域解析タイプ。
| String |
不可視のセルには NoData を使用 (オプション) | 見通せないセルに割り当てられる値。
| Boolean |
Z 係数 (オプション) | サーフェス Z 単位あたりの地表 X,Y 単位の数。 Z 単位の測定基準が入力サーフェスの X、Y 単位と異なる場合、Z 係数を使用して Z 計測単位を調整します。 最終的な出力サーフェスを計算する際、入力サーフェスの Z 値に Z 係数が乗算されます。 XY 単位と Z 単位の測定基準が同じである場合、Z 係数は 1 になります。 これがデフォルトです。 X,Y 単位と Z 単位の測定基準が異なる場合は、Z 係数に適切な値を設定する必要があります。Z 係数が適切でないと、正しい結果が得られません。 たとえば、Z 単位がフィートであり、X,Y 単位がメートルの場合、Z 係数 0.3048 を使用して Z 単位をフィートからメートルへ変換します (1 フィート = 0.3048 メートル)。 | Double |
地球の曲率を使用 (オプション) | 地球の曲率の補正を適用するかどうかを指定します。
| Boolean |
屈折係数 (オプション) | 大気中での可視光線の屈折係数。 デフォルト値は 0.13 です。 | Double |
サーフェス オフセット (オプション) | 可視領域解析の対象となる各セルの Z 値に加算する垂直距離。 値は整数または浮動小数点で指定する必要があります。 入力観測点データセットのフィールドを選択するか、数値を指定できます。 数値フィールド OFFSETB が入力観測点フィーチャの属性テーブルに存在する場合は、それがデフォルトで使用されます。 デフォルト値を上書きするには、別の数値フィールドまたは値を指定します。 このパラメーターが指定されておらず、入力観測点フィーチャの属性テーブルにデフォルトのフィールドが存在しない場合、デフォルトの値は 0 になります。 | Double; Field |
観測点の標高 (オプション) | 観測点または頂点のサーフェス標高。 入力観測点データセットのフィールドを選択するか、数値を指定できます。 数値フィールド SPOT が入力観測点フィーチャの属性テーブルに存在する場合は、それがデフォルトで使用されます。 デフォルト値を上書きするには、別の数値フィールドまたは値を指定します。 このパラメーターが指定されておらず、入力観測点フィーチャの属性テーブルにデフォルトのフィールドが存在しない場合、パラメーターの値は、観測位置の近傍セル内の標高サーフェスの値を使用して、共一次内挿法で推定されます。 | Double; Field |
観測点オフセット (オプション) | 観測点の標高に追加する垂直距離。 値は整数または浮動小数点で指定する必要があります。 入力観測点データセットのフィールドを選択するか、数値を指定できます。 数値フィールド OFFSETA が入力観測点フィーチャの属性テーブルに存在する場合は、それがデフォルトで使用されます。 デフォルト値を上書きするには、別の数値フィールドまたは値を指定します。 このパラメーターが指定されておらず、入力観測点フィーチャの属性テーブルにデフォルトのフィールドが存在しない場合、デフォルトの値は 1 に設定されます。 | Double; Field |
非観測距離 (オプション) | 可視領域を決定する開始距離。 この距離よりも近くにあるセルは出力に表示されませんが、内径と外径の間にあるセルの可視領域をブロックします。 値は、正および負の整数または浮動小数点で指定できます。 正の値の場合、値は 3 次元の見通し距離として解釈されます。 負の値の場合、値は 2 次元の平面距離として解釈されます。 入力観測点データセットのフィールドを選択するか、数値を指定できます。 数値フィールド RADIUS1 が入力観測点フィーチャの属性テーブルに存在する場合は、それがデフォルトで使用されます。 デフォルト値を上書きするには、別の数値フィールドまたは値を指定します。 このパラメーターが指定されておらず、入力観測点フィーチャの属性テーブルにデフォルトのフィールドが存在しない場合、デフォルトの値は 0 になります。 | Double; Field |
観測距離 (オプション) | 可視領域を決定する最大距離。 この距離を超えるセルは、解析から除外されます。 値は、正および負の整数または浮動小数点で指定できます。 正の値の場合、値は 3 次元の見通し距離として解釈されます。 負の値の場合、値は 2 次元の平面距離として解釈されます。 入力観測点データセットのフィールドを選択するか、数値を指定できます。 数値フィールド RADIUS2 が入力観測点フィーチャの属性テーブルに存在する場合は、それがデフォルトで使用されます。 デフォルト値を上書きするには、別の数値フィールドまたは値を指定します。 このパラメーターが指定されておらず、入力観測点フィーチャの属性テーブルにデフォルトのフィールドが存在しない場合、デフォルトの値は無限大に設定されます。 | Double; Field |
方位角始点 (オプション) | 水平方向のスキャン範囲の開始角度。 0 を北の方向として、整数または浮動小数点数で、度単位の 0 ~ 360 の値を指定します。 デフォルト値は 0 です。 入力観測点データセットのフィールドを選択するか、数値を指定できます。 数値フィールド AZIMUTH1 が入力観測点フィーチャの属性テーブルに存在する場合は、それがデフォルトで使用されます。 デフォルト値を上書きするには、別の数値フィールドまたは値を指定します。 このパラメーターが指定されておらず、入力観測点フィーチャの属性テーブルにデフォルトのフィールドが存在しない場合、デフォルトの値は 0 になります。 | Double; Field |
方位角終点 (オプション) | 水平方向のスキャン範囲の終了角度。 0 を北の方向として、整数または浮動小数点数で、度単位の 0 ~ 360 の値を指定します。 デフォルト値は 360 です。 入力観測点データセットのフィールドを選択するか、数値を指定できます。 数値フィールド AZIMUTH2 が入力観測点フィーチャの属性テーブルに存在する場合は、それがデフォルトで使用されます。 デフォルト値を上書きするには、別の数値フィールドまたは値を指定します。 このパラメーターが指定されておらず、入力観測点フィーチャの属性テーブルにデフォルトのフィールドが存在しない場合、デフォルトの値は 360 に設定されます。 | Double; Field |
仰角 (オプション) | 水平面に対してスキャンするときの仰角の上限。 値は、度単位で指定し、整数または浮動小数点を使用できます。 許可される範囲は -90 度~ 90 度 (90 度を含む) です。 このパラメーターの値は [俯角] パラメーターの値よりも大きくなければなりません。 入力観測点データセットのフィールドを選択するか、数値を指定できます。 数値フィールド VERT1 が入力観測点フィーチャの属性テーブルに存在する場合は、それがデフォルトで使用されます。 デフォルト値を上書きするには、別の数値フィールドまたは値を指定します。 このパラメーターが指定されておらず、入力観測点フィーチャの属性テーブルにデフォルトのフィールドが存在しない場合、デフォルトの値は 90 に設定されます。 | Double; Field |
俯角 (オプション) | 水平面に対してスキャンするときの仰角の下限。 値は、度単位で指定し、整数または浮動小数点を使用できます。 許可される範囲は -90 度~ 90 度 (90 度を含まない) です。 このパラメーターの値は [仰角] パラメーターの値よりも小さくなければなりません。 入力観測点データセットのフィールドを選択するか、数値を指定できます。 数値フィールド VERT2 が入力観測点フィーチャの属性テーブルに存在する場合は、それがデフォルトで使用されます。 デフォルト値を上書きするには、別の数値フィールドまたは値を指定します。 このパラメーターが指定されておらず、入力観測点フィーチャの属性テーブルにデフォルトのフィールドが存在しない場合、デフォルトの値は -90 に設定されます。 | Double; Field |
Spatial Analyst のライセンスで利用可能。
3D Analyst のライセンスで利用可能。
サマリー
一連の観測フィーチャから見通せるラスター サーフェスの位置を決定するか、各ラスターのサーフェス位置から見える観測点を特定します。
[測地線可視領域 (Geodesic Viewshed)] ツールにより、機能とパフォーマンスが向上します。
図
使用法
このツールは、頻度および観測点の 2 つの可視領域解析タイプをサポートしています。これらは、[解析タイプ] ツール パラメーターで制御されます。 1 番目のタイプの場合、ツールは、一連の観測点から見通せるラスター サーフェスの位置を決定します。 2 番目のタイプの場合、ツールは、各ラスター サーフェスの位置から見通せる観測点を特定します。
入力ラスターにサンプリング エラーによって発生した望ましくないノイズが含まれており、ArcGIS Spatial Analyst エクステンション がインストールされている場合、このツールを実行する前に [フォーカル統計 (Focal Statistics)] ツールの平均オプションのようなローパス フィルターを使用することでラスターを滑らかにすることも考えられます。
各セルの中心の可視または不可視は、セルの中心における高度をローカル水平線に対する高度と比較して決定されます。 ローカル水平線は、観測点と各セルの中心との間にある地形を考慮して計算されます。 観測点がローカル水平線より上にある場合、可視と見なされます。
ツールでは、オプションで出力 AGL (地上レベル) ラスターを提供しています。 AGL 出力ラスターの各セルには、1 つ以上の観測点からセルを見通すために、セルに追加する必要がある高さの最小値が記録されます。
入力観測フィーチャに複数の観測点が含まれているとき、出力値はすべての観測点における AGL 値の最小値になります。
より詳細に可視領域解析プロセスを制御したい場合は、[観測点] パラメーターを使用します。 たとえば、[観測点オフセット] パラメーターを使用すると、可視領域解析を行うときに観測点の標高に対するオフセットを指定することができます。
入力ラスターをリサンプリングする必要がある場合は、共一次内挿法を使用します。 入力ラスターをリサンプリングする例としては、出力座標系、範囲、またはセル サイズが入力と異なる場合があります。
パラメーター
arcpy.ddd.Visibility(in_raster, in_observer_features, out_raster, {out_agl_raster}, {analysis_type}, {nonvisible_cell_value}, {z_factor}, {curvature_correction}, {refractivity_coefficient}, {surface_offset}, {observer_elevation}, {observer_offset}, {inner_radius}, {outer_radius}, {horizontal_start_angle}, {horizontal_end_angle}, {vertical_upper_angle}, {vertical_lower_angle})
名前 | 説明 | データ タイプ |
in_raster | 入力サーフェス ラスター。 | Raster Layer |
in_observer_features | 観測位置を指定するフィーチャクラス。 入力には、ポイント フィーチャまたはポリライン フィーチャを使用できます。 | Feature Layer |
out_raster | 出力ラスター。 出力には、入力された観測位置から入力サーフェス ラスターの各セル位置を見通せる回数が記録されるか (頻度解析タイプ)、ラスター サーフェス位置の各セルから見通せる観測点の位置が記録されます (観測点タイプ オプション)。 | Raster Dataset |
out_agl_raster (オプション) | 出力 AGL (Above Ground Level) ラスター。 AGL の出力は、見えないセルが 1 つ以上の観測点から見えるようにするためにセルに追加する必要がある最小の高さで各セルの値が構成されるラスターとなります。 この出力ラスターでは、すでに見通せるセルには値 0 が設定されます。 | Raster Dataset |
analysis_type (オプション) | 可視領域解析タイプ。
| String |
nonvisible_cell_value (オプション) | 見通せないセルに割り当てられる値。
| Boolean |
z_factor (オプション) | サーフェス Z 単位あたりの地表 X,Y 単位の数。 Z 単位の測定基準が入力サーフェスの X、Y 単位と異なる場合、Z 係数を使用して Z 計測単位を調整します。 最終的な出力サーフェスを計算する際、入力サーフェスの Z 値に Z 係数が乗算されます。 XY 単位と Z 単位の測定基準が同じである場合、Z 係数は 1 になります。 これがデフォルトです。 X,Y 単位と Z 単位の測定基準が異なる場合は、Z 係数に適切な値を設定する必要があります。Z 係数が適切でないと、正しい結果が得られません。 たとえば、Z 単位がフィートであり、X,Y 単位がメートルの場合、Z 係数 0.3048 を使用して Z 単位をフィートからメートルへ変換します (1 フィート = 0.3048 メートル)。 | Double |
curvature_correction (オプション) | 地球の曲率の補正を適用するかどうかを指定します。
| Boolean |
refractivity_coefficient (オプション) | 大気中での可視光線の屈折係数。 デフォルト値は 0.13 です。 | Double |
surface_offset (オプション) | 可視領域解析の対象となる各セルの Z 値に加算する垂直距離。 値は整数または浮動小数点で指定する必要があります。 入力観測点データセットのフィールドを選択するか、数値を指定できます。 数値フィールド OFFSETB が入力観測点フィーチャの属性テーブルに存在する場合は、それがデフォルトで使用されます。 デフォルト値を上書きするには、別の数値フィールドまたは値を指定します。 このパラメーターが指定されておらず、入力観測点フィーチャの属性テーブルにデフォルトのフィールドが存在しない場合、デフォルトの値は 0 になります。 | Double; Field |
observer_elevation (オプション) | 観測点または頂点のサーフェス標高。 入力観測点データセットのフィールドを選択するか、数値を指定できます。 数値フィールド SPOT が入力観測点フィーチャの属性テーブルに存在する場合は、それがデフォルトで使用されます。 デフォルト値を上書きするには、別の数値フィールドまたは値を指定します。 このパラメーターが指定されておらず、入力観測点フィーチャの属性テーブルにデフォルトのフィールドが存在しない場合、パラメーターの値は、観測位置の近傍セル内の標高サーフェスの値を使用して、共一次内挿法で推定されます。 | Double; Field |
observer_offset (オプション) | 観測点の標高に追加する垂直距離。 値は整数または浮動小数点で指定する必要があります。 入力観測点データセットのフィールドを選択するか、数値を指定できます。 数値フィールド OFFSETA が入力観測点フィーチャの属性テーブルに存在する場合は、それがデフォルトで使用されます。 デフォルト値を上書きするには、別の数値フィールドまたは値を指定します。 このパラメーターが指定されておらず、入力観測点フィーチャの属性テーブルにデフォルトのフィールドが存在しない場合、デフォルトの値は 1 に設定されます。 | Double; Field |
inner_radius (オプション) | 可視領域を決定する開始距離。 この距離よりも近くにあるセルは出力に表示されませんが、内径と外径の間にあるセルの可視領域をブロックします。 値は、正および負の整数または浮動小数点で指定できます。 正の値の場合、値は 3 次元の見通し距離として解釈されます。 負の値の場合、値は 2 次元の平面距離として解釈されます。 入力観測点データセットのフィールドを選択するか、数値を指定できます。 数値フィールド RADIUS1 が入力観測点フィーチャの属性テーブルに存在する場合は、それがデフォルトで使用されます。 デフォルト値を上書きするには、別の数値フィールドまたは値を指定します。 このパラメーターが指定されておらず、入力観測点フィーチャの属性テーブルにデフォルトのフィールドが存在しない場合、デフォルトの値は 0 になります。 | Double; Field |
outer_radius (オプション) | 可視領域を決定する最大距離。 この距離を超えるセルは、解析から除外されます。 値は、正および負の整数または浮動小数点で指定できます。 正の値の場合、値は 3 次元の見通し距離として解釈されます。 負の値の場合、値は 2 次元の平面距離として解釈されます。 入力観測点データセットのフィールドを選択するか、数値を指定できます。 数値フィールド RADIUS2 が入力観測点フィーチャの属性テーブルに存在する場合は、それがデフォルトで使用されます。 デフォルト値を上書きするには、別の数値フィールドまたは値を指定します。 このパラメーターが指定されておらず、入力観測点フィーチャの属性テーブルにデフォルトのフィールドが存在しない場合、デフォルトの値は無限大に設定されます。 | Double; Field |
horizontal_start_angle (オプション) | 水平方向のスキャン範囲の開始角度。 0 を北の方向として、整数または浮動小数点数で、度単位の 0 ~ 360 の値を指定します。 デフォルト値は 0 です。 入力観測点データセットのフィールドを選択するか、数値を指定できます。 数値フィールド AZIMUTH1 が入力観測点フィーチャの属性テーブルに存在する場合は、それがデフォルトで使用されます。 デフォルト値を上書きするには、別の数値フィールドまたは値を指定します。 このパラメーターが指定されておらず、入力観測点フィーチャの属性テーブルにデフォルトのフィールドが存在しない場合、デフォルトの値は 0 になります。 | Double; Field |
horizontal_end_angle (オプション) | 水平方向のスキャン範囲の終了角度。 0 を北の方向として、整数または浮動小数点数で、度単位の 0 ~ 360 の値を指定します。 デフォルト値は 360 です。 入力観測点データセットのフィールドを選択するか、数値を指定できます。 数値フィールド AZIMUTH2 が入力観測点フィーチャの属性テーブルに存在する場合は、それがデフォルトで使用されます。 デフォルト値を上書きするには、別の数値フィールドまたは値を指定します。 このパラメーターが指定されておらず、入力観測点フィーチャの属性テーブルにデフォルトのフィールドが存在しない場合、デフォルトの値は 360 に設定されます。 | Double; Field |
vertical_upper_angle (オプション) | 水平面に対してスキャンするときの仰角の上限。 値は、度単位で指定し、整数または浮動小数点を使用できます。 許可される範囲は -90 度~ 90 度 (90 度を含む) です。 このパラメーターの値は [俯角] パラメーターの値よりも大きくなければなりません。 入力観測点データセットのフィールドを選択するか、数値を指定できます。 数値フィールド VERT1 が入力観測点フィーチャの属性テーブルに存在する場合は、それがデフォルトで使用されます。 デフォルト値を上書きするには、別の数値フィールドまたは値を指定します。 このパラメーターが指定されておらず、入力観測点フィーチャの属性テーブルにデフォルトのフィールドが存在しない場合、デフォルトの値は 90 に設定されます。 | Double; Field |
vertical_lower_angle (オプション) | 水平面に対してスキャンするときの仰角の下限。 値は、度単位で指定し、整数または浮動小数点を使用できます。 許可される範囲は -90 度~ 90 度 (90 度を含まない) です。 このパラメーターの値は [仰角] パラメーターの値よりも小さくなければなりません。 入力観測点データセットのフィールドを選択するか、数値を指定できます。 数値フィールド VERT2 が入力観測点フィーチャの属性テーブルに存在する場合は、それがデフォルトで使用されます。 デフォルト値を上書きするには、別の数値フィールドまたは値を指定します。 このパラメーターが指定されておらず、入力観測点フィーチャの属性テーブルにデフォルトのフィールドが存在しない場合、デフォルトの値は -90 に設定されます。 | Double; Field |
コードのサンプル
この例では、シェープファイルで定義された一連の観測位置から見通せるサーフェス位置を決定します。
import arcpy
from arcpy import env
env.workspace = "c:/data"
arcpy.Visibility_3d("elevation", "observers.shp", "c:/output/visiout1",
"c:/output/aglout1", "FREQUENCY", "NODATA", "1",
"CURVED_EARTH", "0.13", "OFFSETB", "SPOT", "OFFSETA",
"RADIUS1", "RADIUS2", "AZIMUTH1", "AZIMUTH2",
"VERT1", "VERT2")
この例では、各サーフェス位置から見通せる観測点を決定します。
# Name: Viewshed_3d_Ex_02.py
# Description: Determines the raster surface locations visible
# to a set of observer features.
# Requirements: 3D Analyst Extension
# Import system modules
import arcpy
from arcpy import env
# Set environment settings
env.workspace = "c:/data"
# set local variables
inRaster = "elevation"
inObserverFeatures = "observers.shp"
outRaster = "c:/output/visiout1"
aglOutput = "c:/output/aglout1"
analysisType = "OBSERVERS"
nonVisibleValue = "ZERO"
zFactor = 1
useEarthCurvature = "CURVED_EARTH"
refractivityCoefficient = 0.13
surfaceOffset = 500
observerElevation = 2000
observerOffset = 500
innerRadius = 20000
outerRadius = 100000
horizStartAngle = 45
horizEndAngle = 215
vertUpperAngle = 5
vertLowerAngle = -5
# Execute Visibility
arcpy.ddd.Visibility(inRaster, inObserverFeatures, outRaster, algOutput,
analysisType, nonVisibleValue, zFactor, useEarthCurvature,
refractivityCoefficient, surfaceOffset, observerElevation,
observerOffset, innerRadius, outerRadius, horizStartAngle,
horizEndAngle, vertUpperAngle, vertLowerAngle)
環境
ライセンス情報
- Basic: 次のものが必要 3D Analyst または Spatial Analyst
- Standard: 次のものが必要 3D Analyst または Spatial Analyst
- Advanced: 次のものが必要 3D Analyst または Spatial Analyst