HfInverseLinear (arcpy.sa)
Резюме
Задает отношение между горизонтальным фактором стоимости и горизонтальным относительным углом движения с помощью обратной линейной функции. Функция задает отношение между горизонтальным фактором стоимости и горизонтальным относительным углом движения с помощью обратной линейной функции.
Рисунок
Обсуждение
Объект HfInverseLinear используется в следующих инструментах Spatial Analyst: Путевое расстояние (Path Distance), Распределение по путевому расстоянию (Path Distance Allocation) и Путевое направление (Path Distance Back Link).
Горизонтальные факторы (HF) задаются обратными значениями от прямой линии в системе координат "Горизонтальный угол относительного перемещения (HRMA) – горизонтальный фактор (HF)". Линия пересекает ось y, соответствующую фактору HF, в точке со значением, связанным с нулевым фактором zeroFactor. Угол наклона линии может быть задан с помощью модификатора slope. Если модификатор slope не задан, значение по умолчанию равно -2/180 или 1/90 (задается в виде -0,01111).
Синтаксис
Параметр | Объяснение | Тип данных |
zeroFactor |
Фактор zeroFactor будет использоваться для определения местоположения точки пересечения с осью y для обратной линейной функции. (Значение по умолчанию — 2.0) | Double |
cutAngle |
Параметр cutAngle задает пороговое значение угла HRMA, выше которого горизонтальные факторы становятся равными бесконечности. (Значение по умолчанию — 180.0) | Double |
slope |
Определяет уклон прямой линии в системе координат "HRMA-HF". Значение уклона задается в виде подъема над протяженностью. Например, 30-градусный уклон обозначается 1/30, задается в виде 0,03333 (подъем/протяженность: 1 горизонтальный фактор HF по оси y / 30 градусов по оси x); 90-градусный уклон обозначается 0,011111. (Значение по умолчанию — -0.011111) | Double |
Свойства
Свойство | Объяснение | Тип данных |
cutAngle (чтение и запись) |
Параметр cutAngle задает пороговое значение угла HRMA, выше которого горизонтальные факторы становятся равными бесконечности. Когда величина угла HRMA меньше, чем cutAngle, при задании нулевого фактора и если величина угла HRMA превышает cutAngle, то присваивается значение бесконечности. | Double |
zeroFactor (чтение и запись) |
Фактор zeroFactor будет использоваться для определения точки пересечения с осью y для данной функции. Фактор zeroFactor присваивается в качестве горизонтального фактора когда значение HRMA меньше значения порогового угла. | Double |
slope (чтение и запись) |
Определяет уклон прямой линии в системе координат "HRMA-HF". Значение уклона задается в виде подъема над протяженностью. Например, 30-градусный уклон обозначается 1/30, задается в виде 0,03333 (подъем/протяженность: 1 горизонтальный фактор HF по оси y / 30 градусов по оси x). | Double |
Пример кода
Демонстрирует создание класса HfInverseLinear и его использование в инструменте PathDistance в окне Python.
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
myHorizFactor = HfInverseLinear(2.0, 181.0, -0.01111)
outPathDist = PathDistance("source.shp", "costraster", "", "", myHorizFactor)
outPathDist.save("C:/sapyexamples/output/pathdisthfil")
Выполняет анализ PathDistance с использованием класса HfInverseLinear.
# Name: HfInverseLinear_Ex_02.py
# Description: Uses the HfInverseLinear 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 = "source.shp"
inCostRaster = "costraster"
# Create the HfInverseLinear Object
zeroFactor = 2.0
cutAngle = 181.0
slope = -0.01111
myHorizFactor = HfInverseLinear(zeroFactor, cutAngle, slope)
# 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/pathdisthfil2")