Zusammenfassung
The Network Dataset Shields Description object provides additional shields information which is used to enhance the direction information when the streets have multiple street names.
Diskussion
The shieldTypeX and shieldDescriptionX properties are dynamic. This means that the total number of properties supported by the shields description object depends on the descriptionCount property. For example, if the value of the descriptionCount property is 2, then the shields description object will support shieldType0, shieldDescription0, shieldType1, and shieldDescription1 properties.
Eigenschaften
Eigenschaft | Erläuterung | Datentyp |
shieldTypeX (Schreibgeschützt) | The shield type for a particular shield (indicated by X) | Integer |
shieldDescriptionX (Schreibgeschützt) | The shield description for a particular shield (indicated by X) | Integer |
Codebeispiel
Display the shields description information for each network source.
# Name: NDSShieldsDescriptionProperties_ex01.py
# Description: Print additional information about directions shields for each
# edge source
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 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)
#Get the direction information specific to edge source
sDir = source.sourceDirections
#Get the shields for each source
shields = sDir.shields
if shields:
print("----Shields description")
print("Description count: " , shields.descriptionCount)
sDesc = shields.description
if sDesc:
for i in range(0, shields.descriptionCount):
shieldType = getattr(sDesc,"shieldType" + str(i))
sheildDesc = getattr(sDesc, "shieldDescription" + str(i))
print("Type: " , shieldType)
print("Description: " , sheildDesc)
else:
print("(No shield information)")