Rellenar los campos Id. alternativos (Network Analyst)

Resumen

Crea y rellena campos adicionales en las clases de entidad de giro que hacen referencia a los ejes de la red mediante un ID alternativo. Los ID alternativos ayudan a mantener la integridad de las entidades de giro si las fuentes de borde se editan de tal manera que sus valores ObjectID cambian.

Más información sobre los giros en un dataset de red

Uso

  • Los campos Edge#FID de una clase de entidad de giro se refieren al ObjectID de la entidad de línea en una fuente de borde en la red. Sin embargo, los valores de ObjectID se gestionan en el sistema y pueden cambiar durante determinadas operaciones de edición. Para asegurarse de que las entidades de giro conservan la referencia correcta a las entidades de borde después de este tipo de flujo de trabajo de edición, utilice el flujo de trabajo siguiente:

    1. Cree y rellene un campo ID único en cada clase de entidad de fuente de borde de la red. Como alternativa, utilice un campo ID único incluido en los datos por el proveedor de datos, si existe.
    2. Ejecute la herramienta Rellenar campos de ID alternativo para crear y rellenar un conjunto de campos de ID alternativo (AltID#) en las clases de entidad de giro del dataset de la red. La herramienta rellena los campos ID alternativos con los valores de campo ID únicos designados de las fuentes de borde, vinculando cada entidad de giro a la entidad de fuente de borde apropiada a través de los campos ID alternativos además de los campos Edge#FID.
    3. Realice las operaciones de edición que pueden cambiar los ObjectID de las fuentes de bordes.
    4. Ejecute la herramienta Actualizar por campos de ID alternativos para actualizar los campos Edge#FID de las clases de entidad de giro utilizando los valores de campo de ID alternativos para buscar los valores de ObjectID de las entidades de origen de borde correspondientes.

  • La herramienta crea y rellena nuevos campos AltID#, donde # es el número máximo de ejes por giro. Por ejemplo, para las clases de entidades de giro que admiten giros de hasta tres aristas, la herramienta crea y rellena los campos AltID1, AltID2 y AltID3.

Parámetros

EtiquetaExplicaciónTipo de datos
Dataset de red de entrada

Dataset de red cuyas clases de entidad de giro recibirán campos de ID alternativo. Los campos se crearán en todas las clases de entidad de giro agregadas como un origen de giro al dataset de red.

Network Dataset Layer
Nombre de campo Id alternativo

Nombre del campo de ID alternativo en los orígenes de la entidad de borde del dataset de red. Todos los orígenes de la entidad de borde a los que se hace referencia en los giros deben tener el mismo nombre para el campo de Id. alternativo.

String

Salida derivada

EtiquetaExplicaciónTipo de datos
Dataset de red de entrada actualizado

El dataset de red actualizado.

Network Dataset Layer

arcpy.na.PopulateAlternateIDFields(in_network_dataset, alternate_ID_field_name)
NombreExplicaciónTipo de datos
in_network_dataset

Dataset de red cuyas clases de entidad de giro recibirán campos de ID alternativo. Los campos se crearán en todas las clases de entidad de giro agregadas como un origen de giro al dataset de red.

Network Dataset Layer
alternate_ID_field_name

Nombre del campo de ID alternativo en los orígenes de la entidad de borde del dataset de red. Todos los orígenes de la entidad de borde a los que se hace referencia en los giros deben tener el mismo nombre para el campo de Id. alternativo.

String

Salida derivada

NombreExplicaciónTipo de datos
out_network_dataset

El dataset de red actualizado.

Network Dataset Layer

Muestra de código

Ejemplo 1 de PopulateAlternateIDFields (ventana de Python)

Ejecutar la herramienta utilizando todos los parámetros.

network = "C:/Data/SanFrancisco.gdb/Transportation/Streets_ND"
arcpy.na.PopulateAlternateIDFields(network, "ID")
Ejemplo 2 de PopulateAlternateIDFields (script independiente)

La siguiente secuencia de comandos Python muestra cómo utilizar la función PopulateAlternateIDFields en una secuencia de comandos independiente.

# 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.")

Información de licenciamiento

  • Basic: Sí
  • Standard: Sí
  • Advanced: Sí

Temas relacionados