Spatial Analyst のライセンスで利用可能。
3D Analyst のライセンスで利用可能。
図
使用法
このツールは、3 X 3 のセル移動ウィンドウを使用して、データを処理します。処理するセルが NoData の場合、その位置の出力は NoData になります。
このツールでは、処理するセルに隣接した 8 つのセルのうち、少なくとも 7 つが有効な値を持つ必要があります。有効なセルの数が 7 未満である場合、計算は実行されず、その処理セルの出力は NoData になります。
出力ラスターの最も外側のロウとカラムにあるセルは NoData になります。これは、これらのセルが、入力データセットの境界沿いにあり、必要なだけの有効な隣接セルに囲まれていないためです。
出力の値の範囲は、計測単位のタイプによって異なります。
- 度の場合、傾斜角の値の範囲は 0 から 90 です。
- 勾配率の場合、範囲は 0 から本質的に無限です。平坦なサーフェスを 0%、45 度のサーフェスを 100% として表し、サーフェスが垂直に近くなるほど勾配率は大きくなります。
平面による方法の場合、サーフェス (垂直方向) の Z 座標の単位と地面の X および Y 座標の単位が異なる場合は、傾斜角を正しく計算するために Z 係数を使用する必要があります。[Z 係数] パラメーターは、平面による方法が選択された場合のみ有効になります。
測地線による方法の場合、サーフェスの Z 単位を指定することは、出力の精度を確保するために重要です。[Z 単位] パラメーターは、測地線による方法が選択された場合のみ有効になります。
入力ラスターの鉛直座標系では、Z 単位が使用できる場合は自動的に適用されます。 入力ラスターの Z 単位がない場合は定義することをおすすめします。Z 単位の指定には、[投影法の定義 (Define Projection)] ツールを使用できます。これが定義されていない場合、デフォルトでメートルが使用されます。
入力ラスターをリサンプリングする必要がある場合は、共一次内挿法を使用します。入力ラスをリサンプリングする例としては、出力座標系、範囲、またはセル サイズが入力と異なる場合があります。
[入力ラスター] パラメーターの値 (Python の in_raster) が高解像度でセルサイズが数メートル未満の場合や、特にノイズが多い場合は、このツールの直接 3 × 3 近傍ではなく、[サーフェス パラメーター (Surface Parameters)] ツールとそのユーザー定義の近傍距離オプションを使用することを検討してください。 より大きな近傍を使用することで、ノイズの多いサーフェスの影響を最小限に抑えることができます。また、高解像度のサーフェスを使用する場合は、より大きな近隣を使用することで、地形やサーフェスの特性をより上手く表現することができます。
このツールは、測地線の傾斜角を計算する際に GPU により処理を加速化できます。つまり、システムで GPU デバイス (グラフィックス処理装置) を使用可能な場合は、そのデバイスを使用して測地線による方法のパフォーマンスを強化できます。
GPU デバイスの構成方法の詳細については、Spatial Analyst エクステンションのヘルプの「Spatial Analyst での GPU 処理」をご参照ください。
構文
arcpy.3d.Slope(in_raster, out_raster, {output_measurement}, {z_factor}, {method}, {z_unit})
パラメーター | 説明 | データ タイプ |
in_raster | 入力サーフェス ラスター。 | Raster Layer |
out_raster | 出力傾斜角ラスター。 浮動小数点タイプになります。 | Raster Dataset |
output_measurement (オプション) | 出力傾斜角ラスターの計測単位 (度またはパーセンテージ) を決定します。
| String |
z_factor (オプション) | サーフェス z 単位あたりの地表 xy 単位の数。 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 |
method (オプション) | 平面 (平面地球) と測地線 (楕円体) のどちらの方法に基づいて計算するかを指定します。
平面による方法は、正しい距離と面積が維持される投影法で、ローカル エリアに使用するのに適しています。これは、エリアの都市、郡、小さな州などのエリアをカバーする解析に適しています。測地線による方法では、より正確な結果が生成されますが、処理時間が増加する可能性があります。 | String |
z_unit (オプション) | 垂直方向の Z 値の距離単位です。 存在する場合は、鉛直座標系によって定義されます。鉛直座標系が存在しない場合、正しい測地線の計算を実現するために、単位リストから Z 単位を定義する必要があります。デフォルトはメートルです。
| String |
コードのサンプル
この例は、入力サーフェス ラスターの傾斜角の値を決定します。
import arcpy
from arcpy import env
env.workspace = "C:/data"
arcpy.Slope_3d("elevation", "C:/output/outslope01", "DEGREE", 0.3043)
この例は、入力サーフェス ラスターの傾斜角の値を決定します。
# Name: Slope_3d_Ex_02.py
# Description: Identifies the rate of maximum change
# in z-value from each cell.
# 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"
outRaster = "C:/output/outslope02"
outMeasurement = "DEGREE"
zFactor = ""
method = "GEODESIC"
zUnit = "FOOT"
# Check out the ArcGIS 3D Analyst extension license
arcpy.CheckOutExtension("3D")
# Execute Slope
arcpy.Slope_3d(inRaster, outRaster, outMeasurement, zFactor, method, zUnit)
環境
ライセンス情報
- Basic: 次のものが必要 3D Analyst または Spatial Analyst
- Standard: 次のものが必要 3D Analyst または Spatial Analyst
- Advanced: 次のものが必要 3D Analyst または Spatial Analyst