HfForward (arcpy.sa)
Резюме
Определяет отношение между горизонтальным фактором стоимости и горизонтальным относительным углом движения через прямую функцию. Функция указывает, что допускается только прямое движение.
Рисунок
Обсуждение
Объект HfForward используется в следующих инструментах Spatial Analyst: Путевое расстояние (Path Distance), Распределение по путевому расстоянию (Path Distance Allocation) и Путевое направление (Path Distance Back Link).
Если для секции пути значение горизонтального относительного угла движения (HRMA) меньше 45 градусов, горизонтальному фактору (HF) присваивается значение, связанное с zeroFactor. Когда значение HRMA больше или равно 45 градусам и меньше 90 градусов, значение HF устанавливается равным sideValue. Если значение HRMA больше или равно 90 градусам, значение HF устанавливается равным бесконечности.
Синтаксис
Параметр | Объяснение | Тип данных |
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 и его применение в инструменте PathDistance в окне Python.
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
myHorizFactor = HfForward(0.5, 1.0)
outPathDist = PathDistance("sourcepts.shp", "costraster", "", "", myHorizFactor)
outPathDist.save("C:/sapyexamples/output/pathdisthff")
Выполняет анализ PathDistance с использованием класса HfForward.
# Name: HfForward_Ex_02.py
# Description: Uses the HfForward object to execute the PathDistance 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"
inCostRaster = "costraster"
# 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
outPathDist = PathDistance(inSourceData, inCostRaster, "", "", myHorizFactor)
# Save the output
outPathDist.save("C:/sapyexamples/output/pathdisthff2")