Доступно с лицензией Spatial Analyst.
Краткая информация
Определяет взаимосвязь между фактором вертикальной стоимости и вертикальным относительным углом перемещения с помощью двунаправленной функции похода.
Иллюстрация
Обсуждение
Функция двунаправленного похода определяет среднее время, необходимое для похода в одном направлении по пешеходной тропе туда и обратно по наиболее оптимальному маршруту. Вертикальный фактор основан на обратной величине функции Тоблера для пеших переходов, но здесь используется среднее и результатом является темп в часах. Формула будет скорректирована для единиц измерения карты.
Объект VfBidirHikingTime используется в инструментах Накопление расстояния и Распределение по расстоянию Spatial Analyst, а также в устаревших инструментах расстояния Путевое расстояние, Распределение по путевому расстоянию и Путевое направление.
Объект вертикальный фактор (VF) определяет отношение между вертикальным фактором стоимости и вертикальным относительным углом движения (VRMA).
VF определяет вертикальную трудность, возникающую при переходе от одной ячейки к другой.
VRMA определяет угол наклона между ячейкой ОТ или обрабатываемой ячейкой и ячейкой ДО.
Когда VRMA больше нижнего угла среза и меньше верхнего угла среза, VF для перемещения между двумя ячейками устанавливается на значение, полученное из функции. Если VRMA больше значения highCutAngle или ниже значения lowCutAngle, VF устанавливается на бесконечность.
Формула функции пешего прохода Тоблера выглядит так:
Формула для VfHikingTime, которая является обратной функцией пешего прохода Тоблера, выглядит следующим образом:
Формула для VfBidirHikingTime представляет собой среднее время похода с использованием положительных и отрицательных углов:
Где d - угол, по которому вычисляется наклон.
Примечание:
Дополнительную информацию о функции прохода Тоблера см. в разделе Корректировка пройденного расстояния с использованием вертикального фактора в справке инструмента геообработки и на следующем ресурсе:
- Tobler, Waldo. 1993. Three Presentations on Geographical Analysis and Modeling: Non-Isotropic Geographic Modeling; Speculations on the Geometry of Geography; and Global Spatial Analysis (93-1). Получено от https://escholarship.org/uc/item/05r820mz
Синтаксис
VfBidirHikingTime ({lowCutAngle}, {highCutAngle})
Параметр | Описание | Тип данных |
lowCutAngle | The VRMA degree defining the lower threshold, below which (less than) the VFs are set to infinity. (Значение по умолчанию — -70.0) | Double |
highCutAngle | The VRMA degree defining the upper threshold, beyond which (larger than) the VFs are set to infinity. (Значение по умолчанию — 70.0) | Double |
Свойства
Свойство | Описание | Тип данных |
lowCutAngle (чтение и запись) | Значение VRMA в градусах, определяющее нижний порог, ниже которого значения VF устанавливаются равными бесконечности. | Double |
highCutAngle (чтение и запись) | Значение VRMA в градусах, определяющее верхний порог, выше которого значения VF устанавливаются равными бесконечности. | Double |
Пример кода
В этом примере кода показано, как создать класс VfBidirHikingTime и использовать его в инструменте Накопление расстояния в окне Python.
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
myVerticalFactor = VfBidirHikingTime(-30, 30)
outDistAccum = DistanceAccumulation("Source.shp", "", "elev.tif",
"cost.tif", "elev.tif",
myVerticalFactor)
outDistAccum.save("C:/sapyexamples/output/distAccumVfBH.tif")
Выполните анализ накопления расстояний с помощью инструмента Накопление расстояния и класса VfBidirHikingTime.
# Name: VfBidirHikingTime_Ex_02.py
# Description: Uses the VfBidirHikingTime 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 = "source.shp"
inCostRaster = "costraster.tif"
inElevation = "elev.tif"
# Create the VfBidirHikingTime Object
lowCutAngle = -30
highCutAngle = 30
myVerticalFactor = VfBidirHikingTime(lowCutAngle, highCutAngle)
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Run DistanceAccumulation
outDistAccum = DistanceAccumulation(inSourceData, "", inElevation,
inCostRaster, inElevation,
myVerticalFactor)
# Save the output
outDistAccum.save("C:/sapyexamples/output/distaccumvfBH2.tif")