Сводка
Создает растровый объект трехмерного представления поверхности в оттенках серого с учетом расположения источника освещения и теней.
Описание
Дополнительную информацию о работе этой функции см. в статье Отмывка.
Указанный набор растровых данных является временным для растрового объекта. Чтобы сделать его постоянным, можно вызвать метод save растрового объекта.
Синтаксис
Hillshade (dem, {azimuth}, {altitude}, {z_factor}, {slope_type}, {ps_power}, {psz_factor}, {remove_edge_effect}, {hillshade_type})
Parameter | Объяснение | Тип данных |
dem | Входной растр высот. | Raster |
azimuth | Азимут – это относительное положение источника освещения вдоль горизонта (в градусах). Это положение указано углом источника освещения, измеряемое по часовой стрелке с севера. Азимут 0 градусов указывает на север, 90 градусов – на восток, 180 градусов – на юг, 270 градусов – на запад. Этот параметр корректен только в тех случаях, когда для свойства hillshade_type задано значение TRADITIONAL. Значение по умолчанию – 315 градусов (с северо-запада). (Значение по умолчанию — 315) | Double |
altitude | Высота – это угол превышения источника света над горизонтом в диапазоне от 0 до 90 градусов. Значение 0 градусов указывает, что источник освещения находится на горизонте, т.е. на той же горизонтальной плоскости, что и фрейм привязки. Значение 90 градусов указывает, что солнце находится прямо над головой. Этот параметр корректен только в тех случаях, когда для свойства hillshade_type задано значение TRADITIONAL. (Значение по умолчанию — 45) | Double |
z_factor | z-factor является коэффициентом масштабирования, используемым для конвертации значений высоты для двух целей:
Если координаты x,y и z-значения приведены в одной и той же системе координат, коэффициент z должен быть равен 1. При вычислении результирующей выходной поверхности z-значения входной поверхности умножаются на коэффициент по z. (Значение по умолчанию — 1) | Double |
slope_type | Угол уклона может быть получен как значение в градусах или как процент подъема. Укажите один из следующих: DEGREE, PERCENTRISE или SCALED. Более подробно см. Функция Уклона. | Integer |
ps_power | Степень размера пиксела учитывает изменения высоты (или масштаба) по мере увеличения и уменьшения масштаба просмотра карты. Это показатель степени, примененный к значению размера пиксела в уравнении, который управляет скоростью, с которой изменяется z-factor, чтобы избежать значительных потерь данных рельефа. Параметр допускается, только если slope_type SCALED. (Значение по умолчанию — 0.664) | Double |
psz_factor | Коэффициент размера пиксела учитывает изменения масштаба по мере увеличения и уменьшения отображения карты. Управляет степенью, при которой изменяется z-factor. Параметр допускается, только если slope_type SCALED. (Значение по умолчанию — 0.024) | Double |
remove_edge_effect | Использование этой опции позволит избежать каких-либо артефактов пересчета, которые могут возникнуть вдоль краев растра. Значения выходных пикселов вдоль краев растра или прилегающих к пикселам без значения будут заполняться как NoData; поэтому рекомендуется, чтобы эта опция использовалась только тогда, когда есть другие растры, дающие наложение пикселов, так чтобы области NoData отображались перекрывающими пикселами, вместо того, чтобы быть пустыми. Когда перекрывающиеся пикселы доступны, эти области NoData будут отображать пересекающие значения пикселов, вместо того, чтобы быть пустыми.
(Значение по умолчанию — False) | Boolean |
hillshade_type | Определяет источник освещения для отмывки.
(Значение по умолчанию — 0) | Integer |
Тип данных | Объяснение |
Raster | Выходной растр. |
Пример кода
В этом примере вычисляется отмывка заданной поверхности.
from arcpy.ia import *
out_hillshade_raster = Hillshade("elevation.tif", 180, 75, 0.3048)
out_hillshade_raster.save("C:/arcpyExamples/outputs/hillshade.tif")
В этом примере вычисляется отмывка заданной поверхности.
# Import the system modules
import arcpy
from arcpy.ia import *
# Set the analysis environments
arcpy.env.workspace = "C:/arcpyExamples/data"
# Set the local variables
in_dem = "elevation.tif"
# Execute the Hillshade function
out_hillshade_raster = Hillshade(in_dem, 180, 75, 0.3048)
# Save the output
out_hillshade_raster.save("C:/arcpyExamples/outputs/hillshade.tif")