填充备用 ID 字段 (Network Analyst)

摘要

为通过备用 ID 来引用边的转弯要素类创建并填充附加字段。通过备用 ID 可以使用其他一组 ID,从而有助于在编辑源边时保持转弯要素的完整性。

使用情况

  • 该工具将创建并填充名为 AltID<n> 的新字段,其中 n 是每个转弯的最大边数。例如,对于两边转弯要素类,该工具将创建并填充名为 AltID1AltID2 的字段。

  • 地理数据库拥有 ObjectID 字段,而 Shapefile 与其不同,它没有永久的唯一标识符。使用 shapefile 工作空间中的转弯要素类时,通常会遇到 ID 偏移问题,使用备用 ID 可避免此问题。

  • 如果边要素源没有备用 ID 字段(例如,数据供应商提供的唯一标识符),您必须创建并填充这样一个字段,以便使用此工具通过该字段引用转弯要素类。

参数

标注说明数据类型
输入网络数据集

为转弯要素类创建备用 ID 字段时所在的网络数据集。将为所有作为转弯源添加到网络数据集中的转弯要素类创建字段。

Network Dataset Layer
备用 ID 字段名

网络数据集中边要素源的备用 ID 字段名称。 对于转弯引用的所有边要素源,其备用 ID 字段的名称必须相同。

String

派生输出

标注说明数据类型
更新的输入网络数据集

更新后的网络数据集。

网络数据集图层

arcpy.management.PopulateAlternateIDFields(in_network_dataset, alternate_ID_field_name)
名称说明数据类型
in_network_dataset

为转弯要素类创建备用 ID 字段时所在的网络数据集。将为所有作为转弯源添加到网络数据集中的转弯要素类创建字段。

Network Dataset Layer
alternate_ID_field_name

网络数据集中边要素源的备用 ID 字段名称。 对于转弯引用的所有边要素源,其备用 ID 字段的名称必须相同。

String

派生输出

名称说明数据类型
out_network_dataset

更新后的网络数据集。

网络数据集图层

代码示例

PopulateAlternateIDFields 示例 1(Python 窗口)

使用所有参数运行此工具

network = "C:/Data/SanFrancisco.gdb/Transportation/Streets_ND"
arcpy.na.PopulateAlternateIDFields(network, "ID")
PopulateAlternateIDFields 示例 2(独立脚本)

以下 Python 脚本演示了如何在独立脚本中使用 PopulateAlternateIDFields 工具。

# Name: PopulateAlternateIDFields_ex02.py
# Description: Create and populate the alternate ID fields for all turn sources
#              in the network dataset.
# Requirements: Network Analyst Extension

#Import system modules
import arcpy
from arcpy import env

#Set environment settings
env.workspace = "C:/data/SanFrancisco.gdb/Transportation"

#Set local variables
inNetworkDataset = "Streets_ND"
altIDFieldName = "ID"

#Populate alternate IDs on all turn sources in the network dataset
arcpy.PopulateAlternateIDFields_na(inNetworkDataset,altIDFieldName)

print("Script completed successfully.")