Доступно с лицензией Spatial Analyst.
Краткая информация
Создает растр направления стока из каждой ячейки по ближайшей соседней ячейки вниз по склону наибольшей крутизны.
Более подробно о том, как работает инструмент Направление стока
Иллюстрация
Использование
Выходными данными инструмента Направление стока является целочисленный растр, значения которого находятся в диапазоне от 1 до 255. Значения для каждого направления от центра следующие:
Например, если сток по наиболее крутому уклону будет происходить в ячейку, расположенную слева от исследуемой ячейки, то значение направления стока в этой ячейке будет обозначено числом 16.
Если ячейка расположена ниже, чем восемь соседних ячеек, этой ячейке присваивается значение самой нижней соседней ячейки, и направление стока определяется как сток в эту ячейку. Если несколько соседних ячеек имеют одинаковое самое низкое значение, ячейке все равно присваивается это значение, но направление стока определяется с помощью одного из двух методов, поясняемых ниже. Эта процедура используется для фильтрации локальных понижений размером в одну ячейку, которые рассматриваются как помехи.
Если для ячейки характерно одно и то же изменение в z-значении в нескольких направлениях, и ячейка является частью локального понижения, направление стока считается неопределенным. В таких случаях, значение для этой ячейки в выходном растре направления стока будет суммой этих направлений. Например, если изменение в z-значении одинаково и в направлении вправо (направление стока = 1) и в направлении вниз (направление стока = 4), направление стока для этой ячейки будет равно 1 + 4 = 5. Ячейки с неопределенным направлением стока могут быть помечены как локальные понижения с использованием инструмента Локальное понижение.
Если для ячейки характерно одно и то же изменение в z-значении в нескольких направлениях, и она не является частью локального понижения, направление стока присваивается с использованием таблицы перекодировки, определяющей наиболее вероятное направление. Обратитесь к источнику Greenlee (1987).
Выходной растр уклона вычисляется как разница в z-значении, деленная на расстояние между центрами ячеек, выраженная в процентах. Для соседних ячеек эта величина аналогична уклону между ячейками, выраженному в процентах. Для плоских участков расстояние становится расстоянием до ближайшей ячейки с меньшей высотой. Результатом является карта процента подъема на пути наиболее крутого спуска из каждой ячейки.
При вычислении выходного растра уклона для плоских участков расстояние между соседними по диагонали ячейками (1.41421 * cell size) округляется до 1.5 * cell size в целях увеличения производительности алгоритма.
При использовании параметра Сток из крайних ячеек направлен наружу в отключенном значении по умолчанию (NORMAL в Python), сток из ячейки на краю растра поверхности будет осуществляться к внутренней ячейке с максимальным снижением в z-значении. Если снижение меньше или равно нулю, сток из ячейки будет «вытекать» с растра поверхности.
См. раздел Параметры среды анализа и Spatial Analyst для получения дополнительной информации о среде геообработки данного инструмента.
Синтаксис
FlowDirection (in_surface_raster, {force_flow}, {out_drop_raster})
Параметр | Объяснение | Тип данных |
in_surface_raster | Входной растр непрерывной высотной поверхности. | Raster Layer |
force_flow (Дополнительный) | Определяет, будет ли направление стока из краевых ячеек всегда направлено наружу, или же определение направления будет подчиняться обычным (нормальным) правилам определения стока.
| Boolean |
out_drop_raster (Дополнительный) | Дополнительный выходной растр снижения. Растр снижения возвращает отношение максимального изменения по высоте из каждой ячейки вдоль направления стока к расстоянию между центрами ячеек, выраженное в процентах. Это выходные данные с плавающей точкой. | Raster Dataset |
Возвращаемое значение
Название | Объяснение | Тип данных |
out_flow_direction_raster | Выходной растр направления стока из каждой ячейки до соседней ячейки, расположенной вниз по склону с максимальным уклоном. Эти выходные данные будут целочисленными. | Raster |
Пример кода
FlowDirection, пример 1 (окно Python)
В этом примере создается растр направления потока из входного растра поверхности рельефа Grid.
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outFlowDirection = FlowDirection("elevation", "NORMAL")
outFlowDirection.save("C:/sapyexamples/output/outflowdir01")
FlowDirection, пример 2 (автономный скрипт)
В этом примере создается растр направления потока из входного растра поверхности рельефа Grid.
# Name: FlowDirection_Example.py
# Description: Creates a raster of flow direction from each cell to its
# steepest downslope neighbor.
# 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
inSurfaceRaster = "elevation"
outDropRaster = "C:/sapyexamples/output/dropraster"
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute FlowDirection
outFlowDirection = FlowDirection(inSurfaceRaster, "FORCE", outDropRaster)
# Save the output
outFlowDirection.save("C:/sapyexamples/output/outflowdir02")
Параметры среды
Информация о лицензиях
- ArcGIS Desktop Basic: Требует Spatial Analyst
- ArcGIS Desktop Standard: Требует Spatial Analyst
- ArcGIS Desktop Advanced: Требует Spatial Analyst