Skip To Content

Network Source Directions Field Mapping

Summary

The Network Source Directions Field Mapping object provides information about the fields in your data that are mapped to specific properties in the network dataset's directions configuration.

Properties

PropertyExplanationData Type
againstField
(Read Only)

The name of the field in your data mapped to the property designated in the key property for transitions in the to-from direction (against the direction of digitization) of line features.

String
alongField
(Read Only)

The name of the field in your data mapped to the property designated in the key property for transitions in the from-to direction (along the direction of digitization) of line features.

String
key
(Read Only)

The name of the network dataset directions property to which your data's field is being mapped.

String
undirectedField
(Read Only)

The name of the field in your data mapped to the property designated in the key property for transitions that apply to all directions of travel.

String

Code sample

Network Source Directions Field Mapping example
# Name: NDSSourceDirectionsFieldMapping_ex01.py
# Description: Print information about the directions field mappings associated
#              with edge sources in the network dataset.

import arcpy
import sys

network = r"C:/Data/NetworkDatasetWithLandmarks.gdb/Transportation/Streets_ND"

# Create Describe object for the network dataset
desc = arcpy.Describe(network)

#If the directions are not set for the network dataset, exit
if not desc.supportsDirections:
    print("No direction information")
    sys.exit()

# Get all the edge sources
sources = desc.edgeSources

#If there are no edge sources in the network dataset, quit.
if not sources:
    print("No edge sources")
    sys.exit()

#Loop through all the edge sources
for source in sources:
    print("\n--------------------")
    print("Edge source name: " , source.name)
    # Get the directions information specific to this edge source
    sDir = source.sourceDirections
    # Check if the edge source has turn and confirmation landmarks associated with it.
    # If so, print some information about the landmarks.
    if hasattr(sDir, "fieldMappings"):
        fieldMappings = sDir.fieldMappings
        print("\n--Field mapping information--")
        for fm in fieldMappings:
            print("\nProperty key:", fm.key)
            print("Along field name:", fm.alongField)
            print("Against field name:", fm.againstField)
            print("Undirected field name:", fm.undirectedField)
    else:
        print("Source does not directions field mappings.")