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