VfSec (arcpy.sa)

Резюме

Задает отношение между вертикальным фактором стоимости и вертикальным относительным углом движения через функцию секанса.

Рисунок

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

Обсуждение

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

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

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

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

VF определяется секансом угла VRMA.

Синтаксис

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

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

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

Double
highCutAngle

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

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

Double
secPower

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

 VF = sec(VRMA)power

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

Double

Свойства

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

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

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

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

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

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

 VF = sec(VRMA)power

Double

Пример кода

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

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

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

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

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

# 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/pathdistvfs2")

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

9/11/2013