Доступно с лицензией Spatial Analyst.
Краткая информация
Определяет отношение между горизонтальным фактором стоимости и углом отклонения от горизонтали с помощью функции Вперед. Функция устанавливает, что движение возможно только вперед.
Иллюстрация
Обсуждение
Этот объект используется в инструментах Накопление расстояния и Распределение по расстоянию Spatial Analyst, а также в устаревших инструментах расстояния Путевое расстояние, Распределение по путевому расстоянию и Путевое направление.
Если угол отклонения от горизонтали (HRMA) меньше 45 градусов для участка пути, горизонтальному фактору (HF) присваивается значение, связанное с zeroFactor. Когда HRMA больше или равен 45 градусам и меньше 90 градусов, HF устанавливается равным sideValue. Если значение HRMA больше или равно 90 градусам, значение HF устанавливается равным бесконечности.
Синтаксис
HfForward ({zeroFactor}, {sideValue})
Параметр | Описание | Тип данных |
zeroFactor | Нулевой фактор zeroFactor будет использоваться для определения местоположения точки пересечения с осью y для опережающей функции. (Значение по умолчанию — 0.5) | Double |
sideValue | Определяет значение HF, которое будет присвоено углам HRMA, которые больше или равны 45 градусам и меньше 90 градусов. На диаграмме выше параметру sideValue присвоено значение 1. (Значение по умолчанию — 1.0) | Double |
Свойства
Свойство | Описание | Тип данных |
zeroFactor (чтение и запись) | Фактор zeroFactor будет использоваться для определения точки пересечения с осью y для данной функции. Фактор zeroFactor присваивается в качестве горизонтального фактора когда значение HRMA меньше значения порогового угла. | Double |
sideValue (чтение и запись) | Определяет значение HF, которое будет присвоено углам HRMA, которые больше или равны 45 градусам и меньше 90 градусов. На диаграмме выше параметру sideValue присвоено значение 1. | Double |
Пример кода
Иллюстрирует создание класса HfForward и его использование в инструменте DistanceAccumulation в окне Python.
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
myHorizFactor = HfForward(0.5, 1.0)
outDistAccum = DistanceAccumulation("source.shp", "barrier.tif",
"elev.tif", "", "", "",
"horizontalRas.tif", myHorizFactor)
outDistAccum.save("C:/sapyexamples/output/distaccumhff")
Выполняет анализ DistanceAccumulation с использованием класса HfForward.
# Name: HfForward_Ex_02.py
# Description: Uses the HfForward object to run the
# DistanceAccumulation tool.
# 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
inSourceData = "sourcepts.shp"
inSurfaceRaster = "elevation.tif"
inHorizontalRaster = "horizontalRas.tif"
# Create the HfForward Object
zeroFactor = 0.5
sideValue = 1.0
myHorizFactor = HfForward(zeroFactor, sideValue)
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute PathDistance
outDistAccum = DistanceAccumulation(inSourceData,"", inSurfaceRaster,"","",
"", inHorizontalRaster, myHorizFactor)
# Save the output
outDistAccum.save("C:/sapyexamples/output/distaccumhfF2")