Доступно с лицензией Spatial Analyst.
Доступно с лицензией 3D Analyst.
Сводка
Создаёт рельеф с тенью из растровой поверхности, принимая во внимание угол источника освещения и тени.
Иллюстрация
Использование
Инструмент HillShade создает из растра растр рельефа с отмывкой. Предполагается, что источник света находится в бесконечности.
Растр отмывки содержит целочисленные значения в диапазоне от 0 до 255.
Выходными могут быть два типа растров отмывки рельефа. Если отключена опция Моделировать тени, в выходном растре учитывается только локальный угол освещения. Если опция включена, выходной растр учитывает эффекты и от локального угла освещения, и от теней.
Анализ теней выполняется путем учета эффектов местного горизонта для каждой ячейки. Ячейкам растра в тени присваивается нулевое значение.
-
Чтобы создать растр только для участков, находящихся в тени, воспользуйтесь инструментом Переклассифицировать для выделения из выходных значений отмывки нулевого значения. Для достижения подобного результата опция Моделировать тени должна быть включена.
Если входной растр имеет сферическую систему координат, например, десятичные градусы, результаты от запуска инструмента Отмывка могут выглядеть необычно. Это происходит из-за разницы в единицах измерения горизонтальных (наземных) координат и вертикальных z-значений высоты. Так как длина градуса по долготе различна, в зависимости от широты, требуется указать соответствующий Z-коэффициент для широты. Если единицы измерения ваших координат x,y – десятичные градусы, а единицы измерения по 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.
Когда возникает необходимость пересчитать входной растр, используется метод билинейной интерполяции. Например, входной растр может быть пересчитан, когда выходные система координат, экстент или размер ячеек отличаются от входных.
Синтаксис
arcpy.ddd.HillShade(in_raster, out_raster, {azimuth}, {altitude}, {model_shadows}, {z_factor})
Параметр | Объяснение | Тип данных |
in_raster | Входной растр поверхности. | Raster Layer |
out_raster | Выходной растр отмывки. Растр отмывки содержит целочисленные значения в диапазоне от 0 до 255. | Raster Dataset |
azimuth (Дополнительный) | Азимут положения источника света. Азимут выражается в положительных градусах от 0 до 360, измеряемых по часовой стрелке от направления на север. Значение по умолчанию равно 315 градусам. | Double |
altitude (Дополнительный) | Угол высоты источника света над горизонтом. Высота выражается в положительных градусах, при этом считается, что значение, равное 0 градусов, соответствует линии горизонта, а значение 90 градусов соответствует положению источника света непосредственно над головой. Значение по умолчанию равно 45 градусам. | Double |
model_shadows (Дополнительный) | Тип создаваемой отмывки рельефа.
| Boolean |
z_factor (Дополнительный) | Количество наземных единиц измерения координат x,y в одной единице измерения z-значения поверхности. Коэффициент z приводит в соответствие единицы измерения z-значений в том случае, если они отличаются от единиц измерения координат x,y входной поверхности. При вычислении результирующей выходной поверхности z-значения входной поверхности умножаются на коэффициент по z. Если координаты x,y и z-значения приведены в одной и той же системе координат, коэффициент z равен 1. Используется по умолчанию. Если координаты x,y и z-значения приведены в отличающихся единицах измерения, для коэффициента по z должно быть задано соответствующее значение, или же результаты будут некорректными. Например, если единицы измерения для z-значений – футы, а координаты x,y приведены в метрах, для преобразования z-значений из футов в метры вы должны использовать z-коэффициент, равный 0,3048 (1 фут = 0,3048 метра). | Double |
Пример кода
HillShade, пример 1 (окно Python)
В этом примере создается растр отмывки, включающий тени. Заданы определенные углы азимута и высоты.
import arcpy
from arcpy import env
env.workspace = "C:/data"
arcpy.HillShade_3d("elevation", "C:/output/outhillshd01", 180, 75, "SHADOWS", 1)
HillShade, пример 2 (автономный скрипт)
В этом примере создается растр отмывки, включающий тени. Заданы определенные углы азимута и высоты, также задан коэффициент z для конвертации z-единиц из футов в метры.
# Name: HillShade_3d_Ex_02.py
# Description: Computes hillshade values for a raster surface.
# Requirements: 3D Analyst Extension
# Import system modules
import arcpy
from arcpy import env
# Set environment settings
env.workspace = "C:/sapyexamples/data"
# Set local variables
inRaster = "elevation"
outRaster = "C:/output/outhillshd02"
azimuth = 180
altitude = 75
modelShadows = "SHADOWS"
zFactor = 0.348
# Check out the ArcGIS 3D Analyst extension license
arcpy.CheckOutExtension("3D")
# Execute HillShade
arcpy.HillShade_3d(inRaster, outRaster, azimuth, altitude,
modelShadows, zFactor)
Параметры среды
Информация о лицензиях
- Basic: Требуется 3D Analyst или Spatial Analyst
- Standard: Требуется 3D Analyst или Spatial Analyst
- Advanced: Требуется 3D Analyst или Spatial Analyst