VfSecCos (arcpy.sa)

Резюме

Задает отношение между вертикальным фактором стоимости и вертикальным относительным углом движения (VRMA) через функцию секанса/косинуса. Если значение VRMA отрицательное, вертикальный фактор задается функцией секанса, в противном случае вертикальный фактор задается функцией косинуса.

Рисунок

Изображение вертикального фактора VfSecCos
Вертикальный фактор VfSecCos для функций PathDistance.

Обсуждение

Объект VfSecCos используется в следующих инструментах Spatial Analyst: Путевое расстояние (Path Distance), Распределение по путевому расстоянию (Path Distance Allocation) и Путевое направление (Path Distance Back Link).

Объект вертикального фактора (VF) задает отношение между вертикальным фактором стоимости и вертикальным относительным углом движения (VRMA).

VF определяет вертикальный уровень трудности при перемещении из одной ячейки в следующую.

VRMA определяет угол уклона между ячейкой ИЗ или обрабатывающей ячейкой и ячейкой В.

Когда значение угла VRMA (в градусах) выражено отрицательным значением, VF определяется косинусом VRMA. Если значение угла VRMA (в градусах) выражено положительным значением, VF определяется секансом VRMA.

Синтаксис

VfSecCos ({lowCutAngle}, {highCutAngle}, {secPower}, {cosPower})
ПараметрОбъяснениеТип данных
lowCutAngle

Значение VRMA в градусах, определяющее нижний порог, ниже которого значения VF устанавливаются равными бесконечности.

(Значение по умолчанию — -90.0)

Double
highCutAngle

Значение VRMA в градусах, определяющее верхний порог, выше которого значения VF устанавливаются равными бесконечности.

(Значение по умолчанию — 90.0)

Double
secPower

Степень, в которую будут возведены значения функции секанса для углов VRMA. VF определяется следующим образом:

 VF = sec(VRMA)power

(Значение по умолчанию — 1.0)

Double
cosPower

Степень, в которую будут возведены значения функции косинуса для углов VRMA. VF определяется следующим образом:

 VF = cos(VRMA)power

(Значение по умолчанию — 1.0)

Double

Свойства

СвойствоОбъяснениеТип данных
lowCutAngle
(чтение и запись)

Значение VRMA в градусах, определяющее нижний порог, ниже которого значения VF устанавливаются равными бесконечности.

Double
highCutAngle
(чтение и запись)

Значение VRMA в градусах, определяющее верхний порог, выше которого значения VF устанавливаются равными бесконечности.

Double
secPower
(чтение и запись)

Степень, в которую будут возведены значения функции секанса для углов VRMA. VF определяется следующим образом:

 VF = sec(VRMA)power

Double
cosPower
(чтение и запись)

Степень, в которую будут возведены значения функции косинуса для углов VRMA. VF определяется следующим образом:

 VF = cos(VRMA)power

Double

Пример кода

VfSeCos. Пример 1 (окно Python)

Демонстрирует создание класса VfSecCos и его использование с инструментом PathDistance в окне Python.

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
myVerticalFactor = VfSecCos(-90, 90, 1, 1)
outPathDist = PathDistance("source.shp", "costraster", "", "", "", "",
                           myVerticalFactor)
outPathDist.save("C:/sapyexamples/output/pathdistvfsc")
VfSecCos. Пример 2 (автономный скрипт)

Выполняет анализ PathDistance с использованием класса VfSecCos.

# Name: VfSecCos_Ex_02.py
# Description: Uses the VfSecCos 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 VfSecCos Object
lowCutAngle = -90
highCutAngle = 90
secPower = 1
cosPower = 1
myVerticalFactor = VfSecCos(lowCutAngle, highCutAngle, secPower, cosPower)

# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")

# Execute PathDistance
outPathDist = PathDistance(inSourceData, inCostRaster, "", "", "", "",
                           myVerticalFactor)

# Save the output 
outPathDist.save("C:/sapyexamples/output/pathdistvfsc2")

Связанные темы

9/11/2013