Skip to main content

HfTable

汇总

通过指定表文件,定义水平成本系数与水平相对移动角度之间的关系。 表文件标识了用于确定水平系数的水平系数图。

讨论

此对象用于 距离累积距离分配 Spatial Analyst 工具,以及 路径距离路径距离分配路径距离回溯链接 旧的距离工具。

语法

HfTable(inTable)

名称 说明 数据类型

inTable

inTable 是一个 ASCII 文件,每行对应两列。第一列以度为单位标识 HRMA,第二列为 HF。每行指定一个点。两个连续的点生成 HRMA-HF 坐标系中的一条线段。角度必须按升序输入。对于所有小于第一个(最低)输入值或大于最后一个(最大)输入值的 HRMA 角度,其 HF 系数将设置为无穷大。在 ASCII 文件中,无穷大的 HF 表示为 -1。

File

属性

名称 说明 数据类型

inTable

(读取和写入)

inTable 是一个 ASCII 文件,每行对应两列。第一列以度为单位标识 HRMA,第二列为 HF。每行指定一个点。两个连续的点生成 HRMA-HF 坐标系中的一条线段。角度必须按升序输入。对于所有小于第一个(最低)输入值或大于最后一个(最大)输入值的 HRMA 角度,其 HF 系数将设置为无穷大。在 ASCII 文件中,无穷大的 HF 表示为 -1。

String

代码示例

HfTable 示例 1(Python 窗口)

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

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
myHorizFactor = HfTable("hffile.txt")
outDistAccum = DistanceAccumulation("source.shp", "barrier.tif",
                                    "elev.tif", "", "", "",
                                    "horizontalRas.tif", myHorizFactor)
outDistAccum.save("C:/sapyexamples/output/distaccumhft")
HfTable 示例 2(独立脚本)

使用 HfTable 类执行 DistanceAccumulation 分析。

# Name: HfTable_Ex_02.py
# Description: Uses the HfTable 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 HfTable Object
inTable = "hffile.txt"
myHorizFactor = HfTable(inTable)

# Run PathDistance
outDistAccum = DistanceAccumulation(inSourceData,"", inSurfaceRaster,"","",
                                    "", inHorizontalRaster, myHorizFactor)

# Save the output
outDistAccum.save("C:/sapyexamples/output/distaccumhft2")