Skip To Content

Network Source Directions

Summary

The Network Source Directions object provides information used for generating driving directions that are specific to edge sources in the network dataset.

Properties

PropertyExplanationData Type
adminAreaFieldName
(Read Only)

The name of the field containing the administrative area information for generating driving directions.

If the administrative area information is not defined for the network dataset, the adminAreaFieldName property will throw an exception.

String
fieldMappings
(Read Only)

Returns a list of Network Source Directions Field Mapping objects for this source. If field mappings are not defined for this network source, the fieldMappings property will throw an exception.

Object
landmarkEventSources
(Read Only)

Returns a list of Landmark Source objects for this source. If landmark event sources (confirmation landmarks) are not defined for this network source, the landmarkEventSources property will throw an exception.

Object
landmarkManeuverSources
(Read Only)

Returns a list of Landmark Source objects for this source. If landmark maneuver sources (turn landmarks) are not defined for this network source, the landmarkManeuverSources property will throw an exception.

Object
streetNameFields
(Read Only)

Returns a list of Street Name Field objects for this network source.

Object
shields
(Read Only)

Returns a Shields object. This object can be used to determine the shield properties used in driving directions. If the shields information is not defined for the network dataset, the shields property will throw an exception.

Object

Code sample

Network Source Directions Properties Example

Displays directions information specific to edge sources in the network dataset.

# Name: NDSNetworkSourceDirectionProperties_ex01.py
# Description: Print direction settings specific to edge sources in the network
#              dataset.

import arcpy
import sys

# Set the workspace
arcpy.env.workspace = "C:/Data/SanFrancisco.gdb/Transportation"

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

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

print("Source Direction Information ----")

# 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("--------------------")
    print("Name: " , source.name)
    print("Source ID: " , source.sourceID)
    #Print the direction information specific to edge source
    sDir = source.sourceDirections
    # Check if the administrative area information is defined for the network
    #dataset. Otherwise adminAreaFieldName property throws an exception
    if hasattr(sDir, "adminAreaFieldName"):
        print("Administrative area field: " , sDir.AdminAreaFieldName)
    else:
        print("Administrative area field: " , "Not set")