ArcGIS for Desktop

  • 文档
  • 合约
  • 支持

  • My Profile
  • 帮助
  • Sign Out
ArcGIS for Desktop

ArcGIS Online

专为贵组织打造的制图平台

ArcGIS for Desktop

全面的专业性 GIS

ArcGIS for Server

面向企业的 GIS

ArcGIS for Developers

用于构建位置感知应用程序的工具

ArcGIS Solutions

适用于行业的免费模板地图和应用程序

ArcGIS Marketplace

获取适用于组织的应用程序和数据

  • 文档
  • 合约
  • 支持
Esri
  • 登录
user
  • 我的个人资料
  • 登出

帮助

  • 主页
  • 入门
  • 制图
  • 分析
  • 管理数据
  • 工具
  • 更多...

山体阴影

需要 Spatial Analyst 许可。

  • 摘要
  • 插图
  • 用法
  • 语法
  • 代码示例
  • 环境
  • 许可信息

摘要

通过考虑光照源的角度和阴影,根据表面栅格创建地貌晕渲。

了解有关山体阴影工具工作原理的详细信息

插图

Hillshade illustration
OutRas = Hillshade(InRas1, 99, 33)

用法

  • 山体阴影工具可根据某栅格创建地貌晕渲栅格。将光源视为位于无穷远处。

  • 山体阴影栅格的整数值范围为 0 到 255。

  • 可以输出两种地貌晕渲栅格。如果不启用模拟阴影选项(未选中),则输出栅格仅会考虑本地光照入射角度。如果启用该选项(选中),则输出栅格会同时考虑本地光照入射角度和阴影。

  • 通过计入本地地平线对各像元的影响完成阴影分析。将处于阴影之中的栅格像元的值指定为零。

  • 若只想创建阴影区域的栅格,请使用条件函数、重分类或按属性提取工具将为零的山体阴影值与其他山体阴影值分离。山体阴影工具必须已启用模拟阴影选项。

  • 如果输入栅格位于球面坐标系中(如十进制度球面坐标系),则生成的山体阴影可能看起来很独特。这是因为水平地面单位与高程 z 单位之间的测量值存在差异。由于经度的长度随着纬度而变化,因此需要为该纬度指定一个适当的 z 因子。如果 x,y 单位是十进制度而 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 叠加输出栅格,从而创建山体阴影表面的动态三维视图。

  • 若要对输入栅格进行重采样,需使用双线性技术。例如,当输出栅格与输入栅格的坐标系统、范围或像元大小不同时,可对输入栅格进行重采样。

  • 有关适用于此工具的地理处理环境的详细信息,请参阅分析环境和 Spatial Analyst。

语法

Hillshade (in_raster, {azimuth}, {altitude}, {model_shadows}, {z_factor})
参数说明数据类型
in_raster

输入表面栅格。

Raster Layer
azimuth
(可选)

光源的方位角。

方位角由 0 到 360 度之间的正度数表示,以北为基准方向按顺时针进行测量。

默认值为 315 度。

Double
altitude
(可选)

高于地平线的光源高度角。

高度角由正度数表示,0 度代表地平线,而 90 度代表头顶正上方。

默认值为 45 度。

Double
model_shadows
(可选)

要生成的地貌晕渲类型。

  • NO_SHADOWS —输出栅格只会考虑本地光照入射角度而不会考虑阴影的影响。输出值的范围从 0 到 255,0 表示最暗区域,255 表示最亮区域。这是默认设置。
  • SHADOWS — 输出晕渲栅格会同时考虑本地光照入射角度和阴影。输出值的范围从 0 到 255,0 表示阴影区域,255 表示最亮区域。
Boolean
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_raster

输出山体阴影栅格。

山体阴影栅格的整数值范围为 0 到 255。

Raster

代码示例

山体阴影示例 1(Python 窗口)

在本例中将生成含有阴影的山体阴影栅格。设置特定方位角和高度角。

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outHillshade = Hillshade("elevation", 180, 75, "SHADOWS", 1)
outHillshade.save("C:/sapyexamples/output/outhillshd01")
山体阴影示例 2(独立脚本)

在本例中将生成含有阴影的山体阴影栅格。设置特定方位角和高度角,并且 z 因子将使 z 单位从英尺转换为米。

# Name: Hillshade_Ex_02.py
# Description: Computes hillshade values for 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"
azimuth = 180
altitude = 75
modelShadows = "SHADOWS"
zFactor = 0.348

# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")

# Execute HillShade
outHillShade = Hillshade(inRaster, azimuth, altitude, modelShadows, zFactor)

# Save the output 
outHillShade.save("C:/sapyexamples/output/outhillshd02")

环境

  • 自动提交
  • 像元大小
  • 压缩
  • 当前工作空间
  • 范围
  • 地理变换
  • 掩膜
  • 输出配置关键字
  • 输出坐标系
  • 栅格统计
  • 临时工作空间
  • 捕捉栅格
  • 切片大小

许可信息

  • ArcGIS for Desktop Basic: 需要 Spatial Analyst 或 3D Analyst
  • ArcGIS for Desktop Standard: 需要 Spatial Analyst 或 3D Analyst
  • ArcGIS for Desktop Advanced: 需要 Spatial Analyst 或 3D Analyst

相关主题

  • 表面分析工具集概述

ArcGIS for Desktop

  • 主页
  • 文档
  • 合约
  • 支持

ArcGIS 平台

  • ArcGIS Online
  • ArcGIS for Desktop
  • ArcGIS for Server
  • ArcGIS for Developers
  • ArcGIS Solutions
  • ArcGIS Marketplace

关于 Esri

  • 关于我们
  • 招贤纳士
  • 内部人员博客
  • 用户大会
  • 开发者峰会
Esri
分享您的想法。
© Copyright 2016 Environmental Systems Research Institute, Inc. | 隐私政策 | 法律声明