陰影起伏(Hillshade) (Spatial Analyst)

サマリ

光源の角度と影を考慮して、サーフェス ラスタから陰影起伏を作成します。

陰影起伏(Hillshade)の仕組み

Hillshade illustration
OutRas = Hillshade(InRas1, 99, 33)

使用法

構文

Hillshade (in_raster, {azimuth}, {altitude}, {model_shadows}, {z_factor})
パラメータ説明データ タイプ
in_raster

入力サーフェス ラスタ。

Raster Layer
azimuth
(オプション)

光源の方位角。

方位角は正の角度(0 ~ 360)で表され、北から時計回りに計測されます。

デフォルト値は 315 度です。

Double
altitude
(オプション)

水平線を基準とする、光源の高度。

高度は正の角度で表され、水平線の高さが 0 度、頭の真上が 90 度になります。

デフォルト値は 45 度です。

Double
model_shadows
(オプション)

生成する陰影起伏のタイプ。

  • NO_SHADOWS出力ラスタでは、局所光源角度のみが考慮されます。影の影響は考慮されません。出力値の範囲は 0 ~ 255 で、0 は最も暗いエリアを表し、255 は最も明るいエリアを表します。
  • SHADOWS 出力の陰影起伏ラスタでは、局所光源角度と影の両方が考慮されます。出力値の範囲は 0 ~ 255 で、0 は影のエリアを表し、255 は明るいエリアを表します。
Boolean
z_factor
(オプション)

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

Z 単位の測定基準が入力サーフェスの X、Y 単位と異なる場合、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

リターン

名前説明データ タイプ
out_raster

出力陰影起伏ラスタ。

陰影起伏ラスタの整数値範囲は 0 ~ 255 です。

Raster

コードのサンプル

Hillshade(陰影起伏)の例 1(Python ウィンドウ)

この例では、影を含む陰影起伏ラスタを生成します。特定の方位角と高度角が設定されています。

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outHillShade = HillShade("elevation", 180, 75, "SHADOWS", 1)
outHillShade.save("C:/sapyexamples/output/outhillshd01")
Hillshade(陰影起伏)の例 2(スタンドアロン スクリプト)

この例では、影を含む陰影起伏ラスタを生成します。特定の方位角と高度角が設定されており、フィート単位の Z 値をメートル単位へ変換するための Z 係数が指定されています。

# Name: HillShade_Ex_02.py
# Description: Computes hillshade values for a raster surface.
# 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"
azimuth = 180
altitude = 75
modelShadows = "SHADOWS"
zFactor = 0.348

# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")

# Execute HillShade
outHillShade = HillShade(inRaster, azimuth, altitude, modelShadows, zFactor)

# Save the output 
outHillShade.save("C:/sapyexamples/output/outhillshd02")

環境

関連項目

ライセンス情報

ArcView: 必須 Spatial Analyst または 3D Analyst
ArcEditor: 必須 Spatial Analyst または 3D Analyst
ArcInfo: 必須 Spatial Analyst または 3D Analyst

7/10/2012