HfBinary

需要 Spatial Analyst 许可。

摘要

通过二进制函数定义水平成本系数和水平相对移动角度之间的关系。如果水平相对移动角度小于交角,则将水平系数设置为与零系数相关联的值;否则为无穷大。

插图

HfBinary 水平系数图像
路径距离功能的 HfBinary 水平系数。

说明

HfBinary 对象用于 Spatial Analyst 工具:路径距离路径距离分配路径距离回溯链接

当水平相对移动角度 (HRMA) 小于交角时,将移过像元部分的水平系数 (HF) 设置为与零系数相关联的值。如果 HRMA 大于交角,则将此部分的 HF 设置为无穷大。

语法

 HfBinary ({zeroFactor}, {cutAngle})
参数说明数据类型
zeroFactor

zeroFactor 将用于确定二元函数的 y 截距。

(当 HRMA 小于 cutAngle 时,zeroFactor 将被指定为水平系数。)

(默认值为 1.0)

Double
cutAngle

cutAngle 用于确定 HRMA 角度阈值,HRMA 大于该角度时会将 HF 设置为无穷大。

(当 HRMA 小于 cutAngle 时,水平系数将被指定为 zeroFactor,当 HRMA 大于 cutAngle 时,水平系数将被指定为无穷大。)

(默认值为 45)

Double

属性

属性说明数据类型
zeroFactor
(可读写)

zeroFactor 将用于确定函数的 y 截距。

当 HRMA 小于交角时,zeroFactor 将被指定为水平系数。

Double
cutAngle
(可读写)

cutAngle 用于确定 HRMA 角度阈值,HRMA 大于该角度时会将 HF 设置为无穷大。

如果 HRMA 小于交角,则指定零系数;如果 HRMA 大于交角,则指定无穷大。

Double

代码示例

HfBinary 示例 1(Python 窗口)

演示如何创建 HFBinary 类以及如何在 Python 窗口的 PathDistance 工具中使用该类。

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
myHfBinary = HfBinary(1.5, 45.5)
outPathDist = PathDistance("source.shp", "elevation", "", "", myHfBinary)
outPathDist.save("C:/sapyexamples/output/pathdisthfb")
HfBinary 示例 2(独立脚本)

使用 HFBinary 类执行 PathDistance 分析。

# Name: HfBinary_Ex_02.py
# Description: Uses the HFBinary 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 = "sourcepts.shp"
inCostRaster = "elevation"

# Create the HfBinary Object
zeroFactor = 1.0
cutAngle = 45.0
myHorizFactor = HfBinary(zeroFactor, cutAngle)

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

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