曲率(Curvature) (3D Analyst)
使用法
-
主たる出力は、そのセルと周辺の 8 つのセルを対象として計算したセル単位でのサーフェスの曲率です。曲率は、サーフェスの二次導関数で、傾斜角の傾斜角です。オプションの出力曲率は 2 種類あります。断面曲率は最大傾斜角の方向で、平面曲率は最大傾斜角の方向に対して鉛直です。
-
正の曲率は、サーフェスがそのセルで上方向に凸状であることを示します。負の曲率は、サーフェスがそのセルで上方向に凹状であることを示します。ゼロ(0)という値はサーフェスが平らであることを示します。
-
断面出力の場合、負の値は、サーフェスがそのセルで上方向に凸状であることを示します。正の断面曲率は、サーフェスがそのセルで上方向に凹状であることを示します。ゼロ(0)という値はサーフェスが平らであることを示します。
-
平面出力の場合、正の値は、サーフェスがそのセルで上方向に凸状であることを示します。負の平面曲率は、サーフェスがそのセルで上方向に凹状であることを示します。ゼロ(0)という値はサーフェスが平らであることを示します。
-
曲率出力ラスタの単位は、オプションの出力断面曲率ラスタと出力平面曲率ラスタの単位も、Z 単位の 1/100 です。3 つの出力ラスタすべてに合理的に期待される値は、丘陵地(中程度の起伏)で -0.5 ~ 0.5、急峻で険しい山岳地帯(極端な起伏)で -4 ~ 4 の範囲になります。この範囲を超えるラスタ サーフェスを使用することもできます。
構文
パラメータ | 説明 | データ タイプ |
in_raster |
入力サーフェス ラスタ。 | Raster Layer |
out_curvature_raster |
出力曲率ラスタ。 | Raster Dataset |
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_profile_curve_raster (オプション) |
出力断面曲率ラスタ データセットです。 これは、傾斜角の方向におけるサーフェスの曲率です。 | Raster Dataset |
out_plan_curve_raster (オプション) |
出力平面曲率ラスタ データセットです。 これは、傾斜角の方向に鉛直なサーフェスの曲率です。 | Raster Dataset |
コードのサンプル
この例では、入力サーフェス ラスタから曲率ラスタを作成し、Z 係数も適用します。
import arcpy from arcpy import env env.workspace = "C:/data" arcpy.Curvature_3d("elevation", "c:/output/outcurv01", 1.094)
この例では、入力サーフェス ラスタから曲率ラスタを作成し、Z 係数も適用します。
# Name: Curvature_3d_Ex_02.py # Description: Calculates the curvature of a raster surface, # optionally including profile and plan curvature. # 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/outcurv02" zFactor = 1.094 # Check out the ArcGIS 3D Analyst extension license arcpy.CheckOutExtension("3D") # Execute Curvature arcpy.Curvature_3d(inRaster, outRaster, 1.094)