3D Analyst のライセンスで利用可能。
サマリー
光源の角度と影を考慮して、サーフェス ラスターから陰影起伏を作成します。
図
使用法
[陰影起伏 (Hillshade)] ツールは、ラスターを基にして陰影起伏ラスターを作成します。光源は無限遠と見なされます。
陰影起伏ラスターの整数値範囲は 0 〜 255 です。
2 種類の陰影起伏ラスターを出力できます。[影を解析] オプションが無効 (オフ) の場合、局所光源角度のみを考慮してラスターが出力されます。このオプションが有効 (オン) の場合は、局所照明角度と影の両方を考慮してラスターが出力されます。
影については、各セルにおける水平線の影響を考慮して解析されます。影のラスター セルには値 0 が割り当てられます。
-
影領域のみのラスターを作成するには、[再分類 (Reclassify)] ツールを使用して、その他の陰影起伏値から値 0 を切り分けます。この結果を作成するには、[影の解析] オプションを有効 (オン) にする必要があります。
入力ラスターが球面座標系 (10 進経緯度) で表されている場合、生成される陰影起伏が特異に見えることがあります。これは、水平地面の計測単位と標高 Z の計測単位が異なるためです。経度の長さは緯度によって変化するので、目的の緯度の適切な Z 係数を指定する必要があります。X,Y 単位が 10 進度で Z 単位がメートルの場合、特定の緯度に適した Z 係数は、次のようになることがあります。
Latitude Z-factor 0 0.00000898 10 0.00000912 20 0.00000956 30 0.00001036 40 0.00001171 50 0.00001395 60 0.00001792 70 0.00002619 80 0.00005156
ArcGIS ArcScene を使用して出力ラスターをドレープ処理すれば、陰影起伏サーフェスを 3 次元で表示し、視覚効果を高めることができます。
入力ラスターをリサンプリングする必要がある場合は、共一次内挿法を使用します。入力ラスをリサンプリングする例としては、出力座標系、範囲、またはセル サイズが入力と異なる場合があります。
構文
Hillshade_3d (in_raster, out_raster, {azimuth}, {altitude}, {model_shadows}, {z_factor})
パラメーター | 説明 | データ タイプ |
in_raster | 入力サーフェス ラスター。 | Raster Layer |
out_raster | 出力陰影起伏ラスター。 陰影起伏ラスターの整数値範囲は 0 〜 255 です。 | Raster Dataset |
azimuth (オプション) | 光源の方位角。 方位角は正の角度 (0 ~ 360) で表され、北から時計回りに計測されます。 デフォルト値は 315 度です。 | Double |
altitude (オプション) | 水平線を基準とする、光源の高度。 高度は正の角度で表され、水平線の高さが 0 度、頭の真上が 90 度になります。 デフォルト値は 45 度です。 | Double |
model_shadows (オプション) | 生成する陰影起伏のタイプ。
| Boolean |
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 |
コードのサンプル
Hillshade (陰影起伏) の例 1 (Python ウィンドウ)
この例では、影を含む陰影起伏ラスターを生成します。特定の方位角と高度角が設定されています。
import arcpy
from arcpy import env
env.workspace = "C:/data"
arcpy.HillShade_3d("elevation", "C:/output/outhillshd01", 180, 75, "SHADOWS", 1)
Hillshade (陰影起伏) の例 2 (スタンドアロン スクリプト)
この例では、影を含む陰影起伏ラスターを生成します。特定の方位角と高度角が設定されており、フィート単位の Z 値をメートル単位へ変換するための Z 係数が使用されています。
# Name: HillShade_3d_Ex_02.py
# Description: Computes hillshade values for a raster surface.
# Requirements: 3D Analyst Extension
# Import system modules
import arcpy
from arcpy import env
# Set environment settings
env.workspace = "C:/sapyexamples/data"
# Set local variables
inRaster = "elevation"
outRaster = "C:/output/outhillshd02"
azimuth = 180
altitude = 75
modelShadows = "SHADOWS"
zFactor = 0.348
# Check out the ArcGIS 3D Analyst extension license
arcpy.CheckOutExtension("3D")
# Execute HillShade
arcpy.HillShade_3d(inRaster, outRaster, azimuth, altitude,
modelShadows, zFactor)
環境
ライセンス情報
- ArcGIS Desktop Basic: 次のものが必要 3D Analyst または Spatial Analyst
- ArcGIS Desktop Standard: 次のものが必要 3D Analyst または Spatial Analyst
- ArcGIS Desktop Advanced: 次のものが必要 3D Analyst または Spatial Analyst