可視領域 (Spatial Analyst)

Spatial Analyst のライセンスで利用可能。

3D Analyst のライセンスで利用可能。

サマリー

一連の観測フィーチャから見通せるラスター サーフェスの位置を決定します。

[測地線可視領域 (Geodesic Viewshed)] ツールにより、機能とパフォーマンスが向上します。

可視領域の図
陰影起伏標高サーフェスに表示された可視領域の出力

使用法

  • 観測ポイントの決定は、コンピューターに負荷がかかる処理です。 処理にかかる時間は、解像度によって変わります。 事前調査の場合、粗いセル サイズにして入力のセル数を減らすこともできます。 最終結果を生成する準備が整ったら、フル解像度のラスターを使用します。

  • 入力ラスターにサンプリング エラーによって発生した望ましくないノイズが含まれている場合、このツールを実行する前に [フォーカル統計 (Focal Statistics)] ツールの平均オプションのようなローパス フィルターを使用することでラスターを滑らかにすることも考えられます。

  • 各セルの中心の可視または不可視は、セルの中心における高度をローカル水平線に対する高度と比較して決定されます。 ローカル水平線は、観測点と各セルの中心との間にある地形を考慮して計算されます。 観測点がローカル水平線より上にある場合、可視と見なされます。

  • このツールには、オプションの出力 AGL (地上レベル) ラスターが用意されています。 AGL 出力ラスターの各セルには、1 つ以上の観測点からセルを見通すために、セルに追加する必要がある高さの最小値が記録されます。

    入力観測フィーチャに複数の観測点が含まれているとき、出力値はすべての観測点における AGL 値の最小値になります。

  • 入力ラスターをリサンプリングする必要がある場合は、共一次内挿法を使用します。 入力ラスターをリサンプリングする例としては、出力座標系、範囲、またはセル サイズが入力と異なる場合があります。

パラメーター

ラベル説明データ タイプ
入力ラスター

入力サーフェス ラスター。

Raster Layer
入力観測ポイント、またはライン フィーチャ

観測位置を指定するフィーチャクラス。

入力には、ポイント フィーチャまたはポリライン フィーチャを使用できます。

Feature Layer
Z 係数
(オプション)

サーフェス Z 単位あたりの地表 X,Y 単位の数。

z 単位の測定基準が入力サーフェスの xy 単位と異なる場合、z 係数を使用して z 測定単位を調整します。 最終的な出力サーフェスを計算する際、入力サーフェスの Z 値に Z 係数が乗算されます。

X,Y 単位と Z 単位の測定基準が同じ場合、Z 係数は 1 これがデフォルトです。

X,Y 単位と Z 単位の測定基準が異なる場合は、Z 係数に適切な値を設定する必要があります。Z 係数が適切でないと、正しい結果が得られません。 たとえば、Z 単位がフィートであり、X,Y 単位がメートルの場合、Z 係数 0.3048 を使用して Z 単位をフィートからメートルへ変換します (1 フィート = 0.3048 メートル)。

Double
地球の曲率を使用
(オプション)

地球の曲率の補正を適用するかどうかを指定します。

  • オフ - 曲率補正は適用されません。 これがデフォルトです。
  • オン - 曲率補正が適用されます。
Boolean
屈折係数
(オプション)

大気中での可視光線の屈折係数。

デフォルト値は 0.13 です。

Double
出力 AGL (地上レベル) ラスター
(オプション)

出力 AGL (地上レベル) ラスター。

AGL の出力は、見えないセルが 1 つ以上の観測点から見えるようにするためにセルに追加する必要がある最小の高さで各セルの値が構成されるラスターとなります。

この出力ラスターでは、すでに見通せるセルには値 0 が設定されます。

Raster Dataset

戻り値

ラベル説明データ タイプ
出力ラスター

出力ラスター。

出力には、入力観測点 (またはポリラインの頂点) から、入力サーフェス ラスターの各セル位置を見通せた回数だけが記録されます。 観測の頻度は、出力ラスターの属性テーブルに VALUE 項目として記録されます。

Raster

Viewshed(in_raster, in_observer_features, {z_factor}, {curvature_correction}, {refractivity_coefficient}, {out_agl_raster})
名前説明データ タイプ
in_raster

入力サーフェス ラスター。

Raster Layer
in_observer_features

観測位置を指定するフィーチャクラス。

入力には、ポイント フィーチャまたはポリライン フィーチャを使用できます。

Feature Layer
z_factor
(オプション)

サーフェス Z 単位あたりの地表 X,Y 単位の数。

z 単位の測定基準が入力サーフェスの xy 単位と異なる場合、z 係数を使用して z 測定単位を調整します。 最終的な出力サーフェスを計算する際、入力サーフェスの Z 値に Z 係数が乗算されます。

X,Y 単位と Z 単位の測定基準が同じ場合、Z 係数は 1 これがデフォルトです。

X,Y 単位と Z 単位の測定基準が異なる場合は、Z 係数に適切な値を設定する必要があります。Z 係数が適切でないと、正しい結果が得られません。 たとえば、Z 単位がフィートであり、X,Y 単位がメートルの場合、Z 係数 0.3048 を使用して Z 単位をフィートからメートルへ変換します (1 フィート = 0.3048 メートル)。

Double
curvature_correction
(オプション)

地球の曲率の補正を適用するかどうかを指定します。

  • FLAT_EARTH曲率補正は適用されません。 これがデフォルトです。
  • CURVED_EARTH曲率補正が適用されます。
Boolean
refractivity_coefficient
(オプション)

大気中での可視光線の屈折係数。

デフォルト値は 0.13 です。

Double
out_agl_raster
(オプション)

出力 AGL (地上レベル) ラスター。

AGL の出力は、見えないセルが 1 つ以上の観測点から見えるようにするためにセルに追加する必要がある最小の高さで各セルの値が構成されるラスターとなります。

この出力ラスターでは、すでに見通せるセルには値 0 が設定されます。

Raster Dataset

戻り値

名前説明データ タイプ
out_raster

出力ラスター。

出力には、入力観測点 (またはポリラインの頂点) から、入力サーフェス ラスターの各セル位置を見通せた回数だけが記録されます。 観測の頻度は、出力ラスターの属性テーブルに VALUE 項目として記録されます。

Raster

コードのサンプル

Viewshed (可視領域) の例 1 (Python ウィンドウ)

この例では、シェープファイルで定義された一連の観測位置から見通せるサーフェス位置を決定します。

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outViewshed = Viewshed("elevation","observers.shp",2,"CURVED_EARTH",0.15)
outViewshed.save("C:/sapyexamples/output/outvwshd01")
Viewshed (可視領域) の例 2 (スタンドアロン スクリプト)

この例では、シェープファイルで定義された一連の観測位置から見通せるサーフェス位置を決定します。

# Name: Viewshed_Ex_02.py
# Description: Determines the raster surface locations visible to a set of
#              observer features.
# Requirements: Spatial Analyst Extension

# Import system modules
import arcpy
from arcpy import env
from arcpy.sa import *

# Set environment settings
env.workspace = "C:/sapyexamples/data"

# Set local variables
inRaster = "elevation"
inObserverFeatures = "observers.shp"
zFactor = 2
useEarthCurvature = "CURVED_EARTH"
refractivityCoefficient = 0.15

# Execute Viewshed
outViewshed = Viewshed(inRaster, inObserverFeatures, zFactor, 
                       useEarthCurvature, refractivityCoefficient)

# Save the output 
outViewshed.save("C:/sapyexamples/output/outvwshd02")