需要 Spatial Analyst 许可。
需要 3D Analyst 许可。
插图
使用方法
此工具使用移动的 3 x 3 像元窗口来处理数据。如果处理像元为 NoData,则该位置的输出将为 NoData。
该工具还要求在与处理像元相邻的 8 个像元中,至少有 7 个具有有效值。如果有效像元少于 7 个,则不执行计算,并且该处理像元处的输出将为 NoData。
输出栅格最外侧行列的像元为 NoData。这是因为沿着输入数据集边界,这些像元没有足够的有效相邻像元。
坡向由 0 到 360 度之间的正度数表示,以北为基准方向按顺时针进行测量。
会为输入栅格中的平坦(具有零坡度)像元分配 -1 坡向。
在测地线方法中,指定表面 z 单位对于确保输出的精度非常重要。仅当选择测地线方法时才会启用 Z 单位参数。
如果 z 单位可用于输入栅格的垂直坐标系,则将自动应用 z 单位。 如果缺失,建议您定义输入栅格的 z 单位。可使用定义投影工具来指定 z 单位。如果未定义 z 单位,则默认使用米。
工程测地线方位角(Python 中的 project_geodesic_azimuths)参数仅在方法参数设置为测地线时可用。
对于测地线方法,如果选中投影测地线方位角参数(在 Python 中,project_geodesic_azimuths 设置为 PROJECT_GEODESIC_AZIMUTHS),则以下表述将为真:
- 北方始终以 360 度表示。
- 将投影方位角以纠正由非等角的输出坐标系引起的变形。这些角度可用于沿着最陡峭的下坡坡度准确定位点。
如果您使用方面输出作为“距离”工具集中工具的反方向输入,请选中工程测地线方位角参数,。
若要对输入栅格进行重采样,需使用双线性技术。例如,当输出栅格与输入栅格的坐标系统、范围或像元大小不同时,可对输入栅格进行重采样。
计算测地线坡向时,此工具可通过图形处理器 (GPU) 加速。也就是说,如果系统中安装了 GPU 设备,则该设备可用于提高测地线方法的性能。
通过 Spatial Analyst 处理 GPU 帮助主题中包含有关配置和使用 GPU 设备的更多详细信息,以及一些常见困难的疑难解答提示。
有关适用于此工具的地理处理环境的详细信息,请参阅分析环境和 Spatial Analyst。
语法
Aspect(in_raster, {method}, {z_unit}, {project_geodesic_azimuths})
参数 | 说明 | 数据类型 |
in_raster | 输入表面栅格。 | Raster Layer |
method (可选) | 确定基于平面(平地)或测地线(椭球)方法计算坡向。
平面方法适用于保持正确距离和面积的投影中的局部区域。适用于覆盖诸如城市、县或面积较小的州等区域的分析。测地线方法可以产生更精确的结果,但会造成处理时间这一潜在成本增加。 | String |
z_unit (可选) | 垂直 z 值的线性单位。 由垂直坐标系(如果存在)定义。如果垂直坐标系不存在,则应根据单位列表来定义 z 单位,以确保测地线计算正确。默认情况下,将应用米作为单位。
| String |
project_geodesic_azimuths (可选) | 指定是否将投影测地线方位角以校正由输出空间参考引起的角度失真。
| Boolean |
返回值
名称 | 说明 | 数据类型 |
out_raster | 输出坡向栅格。 此栅格为浮点类型。 | Raster |
代码示例
此示例将根据输入表面栅格创建坡向栅格。
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outAspect = Aspect("elevation")
outAspect.save("C:/sapyexamples/output/outaspect01.img")
此示例将根据输入表面栅格创建坡向栅格。
# Name: Aspect_Ex_02.py
# Description: Derives aspect from 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"
method = "GEODESIC"
zUnit = "FOOT"
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute Aspect
outAspect = Aspect(inRaster, method, zUnit)
# Save the output
outAspect.save("C:/sapyexamples/output/outaspect02")
许可信息
- Basic: 需要 Spatial Analyst 或 3D Analyst
- Standard: 需要 Spatial Analyst 或 3D Analyst
- Advanced: 需要 Spatial Analyst 或 3D Analyst