Alternative ID-Felder füllen (Network Analyst)

Zusammenfassung

Erstellt und füllt in den Turn-Feature-Classes zusätzliche Felder, die anhand alternativer IDs die Netzwerkkanten referenzieren. Wenn sich die ObjectID-Werte von Kantenquellen im Rahmen der Bearbeitung ändern, wird mithilfe der alternativen IDs die Integrität der Kantenübergangs-Features gewahrt.

Weitere Informationen zu Kantenübergängen in einem Netzwerk-Dataset

Verwendung

  • Die Edge#FID-Felder in einer Turn-Feature-Class verweisen auf die ObjectID des Linien-Features in einer Kantenquelle des Netzwerks. ObjectIDs werden jedoch vom System verwaltet und können sich bei bestimmten Bearbeitungsvorgängen ändern. Verwenden Sie den folgenden Workflow, um sicherzustellen, dass nach entsprechenden Bearbeitungs-Workflows in den Kantenübergang-Features die richtige Referenz zu den Kanten-Features erhalten bleibt:

    1. Erstellen Sie in jeder Edge-Source-Feature-Class des Netzwerks ein Feld für die eindeutige ID, und füllen Sie es aus. Sie können auch ein vom Datenanbieter in den Daten angegebenes Feld für die eindeutige ID verwenden, sofern vorhanden.
    2. Führen Sie das Werkzeug Alternative ID-Felder füllen aus, um verschiedene alternative ID-Felder (AltID#) in den Turn-Feature-Classes des Netzwerk-Datasets festzulegen und zu befüllen. Das Werkzeug füllt die alternativen ID-Felder mit den festgelegten eindeutigen ID-Feldwerten aus den Kantenquellen. Dadurch wird jedes Kantenübergang-Feature über die Edge#FID-Felder sowie die alternativen ID-Felder mit dem zugehörigen Kantenquellen-Feature verknüpft.
    3. Führen Sie die Bearbeitungsvorgänge durch, in deren Rahmen sich die ObjectIDs der Kantenquellen ändern können.
    4. Führen Sie das Werkzeug Nach alternativen ID-Feldern aktualisieren aus, um die Edge#FID-Felder in den Turn-Feature-Classes zu aktualisieren, wobei die ObjectID-Werte der zugehörigen Kantenquellen-Features anhand der alternativen ID-Feldwerte ermittelt werden.

  • Durch das Werkzeug werden neue Felder namens AltID# erstellt und befüllt, wobei "#" für die maximale Anzahl an Kanten pro Kantenübergang steht. So werden für Turn-Feature-Classes, die bis zu drei Kanten unterstützen, von dem Werkzeug die Felder AltID1, AltID2 und AltID3 erstellt und gefüllt.

Parameter

BeschriftungErläuterungDatentyp
Eingabe-Netzwerk-Dataset

Das Netzwerk-Dataset, dessen Turn-Feature-Classes alternative ID-Felder erhalten. Die Felder werden für alle Turn-Feature-Classes erstellt, die dem Netzwerk-Dataset als Kantenübergangsquelle hinzugefügt werden.

Network Dataset Layer
Name für alternatives ID-Feld

Der Name des alternativen ID-Feldes in den Kanten-Feature-Quellen des Netzwerk-Datasets. Alle Kanten-Feature-Quellen, die von Kantenübergängen referenziert werden, müssen denselben Namen für das alternative ID-Feld aufweisen.

String

Abgeleitete Ausgabe

BeschriftungErläuterungDatentyp
Aktualisiertes Eingabe-Netzwerk-Dataset

Das aktualisierte Netzwerk-Dataset.

Network Dataset Layer

arcpy.na.PopulateAlternateIDFields(in_network_dataset, alternate_ID_field_name)
NameErläuterungDatentyp
in_network_dataset

Das Netzwerk-Dataset, dessen Turn-Feature-Classes alternative ID-Felder erhalten. Die Felder werden für alle Turn-Feature-Classes erstellt, die dem Netzwerk-Dataset als Kantenübergangsquelle hinzugefügt werden.

Network Dataset Layer
alternate_ID_field_name

Der Name des alternativen ID-Feldes in den Kanten-Feature-Quellen des Netzwerk-Datasets. Alle Kanten-Feature-Quellen, die von Kantenübergängen referenziert werden, müssen denselben Namen für das alternative ID-Feld aufweisen.

String

Abgeleitete Ausgabe

NameErläuterungDatentyp
out_network_dataset

Das aktualisierte Netzwerk-Dataset.

Network Dataset Layer

Codebeispiel

PopulateAlternateIDFields: Beispiel 1 (Python-Fenster)

Führen Sie das Werkzeug unter Verwendung aller Parameter aus.

network = "C:/Data/SanFrancisco.gdb/Transportation/Streets_ND"
arcpy.na.PopulateAlternateIDFields(network, "ID")
PopulateAlternateIDFields: Beispiel 2 (eigenständiges Skript)

Das folgende Python-Skript veranschaulicht, wie die Funktion PopulateAlternateIDFields in einem eigenständigen Skript verwendet wird.

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

Lizenzinformationen

  • Basic: Ja
  • Standard: Ja
  • Advanced: Ja

Verwandte Themen