『公告』 预祝您龙年大吉,万事如意, 过节期间, 大家如需数据服务,请拨打400 或直接添加客服微信,再祝大家龙年,心想事成。
关注我们 新浪 腾讯

ArcGIS教程:曲率

ArcGIS教程:曲率
计算栅格表面的曲率,包括剖面曲率和平面曲率。

摘要

    计算栅格表面的曲率,包括剖面曲率和平面曲率。

用法

·      主要输出结果为每个像元的表面曲率,该值通过将该像元与八个相邻像元拟合而得。曲率是表面的二阶导数,或者可称之为坡度的坡度。可供选择的输出曲率类型为:剖面曲率(沿最大斜率的坡度)和平面曲率(垂直于最大坡度的方向)。

·      曲率为正说明该像元的表面向上凸。曲率为负说明该像元的表面开口朝上凹入。值为 0 说明表面是平的。

·      在剖面曲率输出中,值为负说明该像元的表面向上凸。剖面曲率为正说明该像元的表面开口朝上凹入。值为 0 说明表面是平的。

·      在平面曲率输出中,值为正说明该像元的表面向上凸。平面曲率为负说明该像元的表面开口朝上凹入。值为 0 说明表面是平的。

·      曲率输出栅格的单位以及可选输出剖面曲线栅格和输出平面曲线栅格的单位是 z 单位的百分之一 (1/100)。某山区(平缓地貌)的全部三个输出栅格的合理期望值介于 -0.5 0.5 之间;如果山势较为陡峭崎岖(极端地貌),那么期望值介于 -4 4 之间。请注意,某些栅格表面可能会超过此范围。

语法

    Curvature (in_raster, {z_factor}, {out_profile_curve_raster}, {out_plan_curve_raster})

参数

说明

数据类型

in_raster

输入表面栅格。

Raster Layer

z_factor

(可选)

一个表面 z 单位中地面 x,y 单位的数量。

z 单位与输入表面的 x,y 单位不同时,可使用 z 因子调整 z 单位的测量单位。计算最终输出表面时,将用 z 因子乘以输入表面的 z 值。

如果 x,y 单位和 z 单位采用相同的测量单位,则 z 因子为 1。这是默认值。

如果 x,y 单位和 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

返回值

名称

说明

数据类型

out_curvature_raster

输出曲率栅格。

Raster

代码实例

    曲率示例 1Python 窗口)

    在本例中将根据输入表面栅格创建曲率栅格,并将应用 z 因子。

import arcpy

from arcpy import env

from arcpy.sa import *

env.workspace = "C:/sapyexamples/data"

outCurve = Curvature("elevation", 1.094)

outCurve.save("C:/sapyexamples/output/outcurv01")

    曲率示例 2(独立脚本)

    在本例中将根据输入表面栅格创建曲率栅格,并将应用 z 因子。

# Name: Curvature_Ex_02.py

# Description: Calculates the curvature of a raster surface,

#              optionally including profile and plan curvature.

# 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"

zFactor = 1.094

# Check out the ArcGIS Spatial Analyst extension license

arcpy.CheckOutExtension("Spatial")

# Execute Curvature

outCurve = Curvature(inRaster, 1.094)

# Save the output

outCurve.save("C:/sapyexamples/output/outcurv02")

      京ICP备2025132830号-1 京公网安备 号