Propriétés de la couche Network Analyst
Récapitulatif
La fonction Describe renvoie les propriétés suivantes pour les couches Network Analyst.
Une couche Network Analyst renvoie un dataType de "NALayer".
Une couche Network Analyst renvoie des informations sur les entrées et les paramètres utilisés dans l'analyse d'un problème de réseau à l'aide de l'extension ArcGIS Network Analyst.
Propriétés
Propriété | Explication | Type de données |
network (Lecture seule) |
Objet Jeu de données réseau. Cet objet permet d'obtenir toutes les propriétés, telles que catalogPath, du jeu de données réseau sous-jacent utilisé par la couche d'analyse. | Object |
nameString (Lecture seule) |
Nom de la couche Network Analyst. | String |
solverName (Lecture seule) |
Solveur Network Analyst en cours de référencement par la couche. Chaque couche peut référencer un solveur uniquement. Cette propriété renvoie les mots-clés suivants :
| String |
impedance (Lecture seule) |
Attribut de coût de réseau utilisé comme impédance pendant l'analyse. | String |
accumulators (Lecture seule) |
Liste des attributs de coût de réseau, séparés par un point-virgule, rassemblés pour l'analyse. | String |
restrictions (Lecture seule) |
Liste des attributs de restriction, séparés par un point-virgule, appliqués pour l'analyse. | String |
ignoreInvalidLocations (Lecture seule) |
Expression booléenne indiquant la façon dont le solveur considère les emplacements réseau incorrects dans les classes Network Analyst. Une valeur True indique que les emplacements incorrects sont ignorés par le solveur. Une valeur False indique que les emplacements incorrects ne sont pas ignorés par le solveur. | Boolean |
uTurns (Lecture seule) |
Indique comment les demi-tours aux jonctions qui pourraient survenir lors de la traversée du réseau entre des arrêts sont gérés par le solveur. Cette propriété renvoie les mots-clés suivants :
| String |
useHierarchy (Lecture seule) |
Indique si la couche Network Analyst utilise une hiérarchie. Cette propriété renvoie les mots-clés suivants :
| String |
hierarchyAttribute (Lecture seule) |
Nom de l'attribut de hiérarchie. | String |
hierarchyLevelCount (Lecture seule) |
Nombre de plages de hiérarchie utilisées pour définir l'attribut de hiérarchie. La valeur maximale est 3. | Integer |
maxValueForHierarchyX (Lecture seule) |
Un attribut de hiérarchie donné peut avoir des valeurs qui définissent les plages de hiérarchie. Les valeurs maximales pour chaque plage peuvent être obtenues de la propriété maxValueForHierarchyX, X indiquant le niveau de la hiérarchie. Par exemple, la valeur maximale pour la première plage de hiérarchie (utilisée pour définir les routes nationales) peut être obtenue de la propriété maxValueForHierarchy1. Utilisez la propriété hierarchyLevelCount pour déterminer le nombre possible de propriétés maxValueForHierarchy pour un attribut de hiérarchie donné. Par exemple, si la propriété hierarchyLevelCount renvoie 3, l'objet Describe prendra en charge les propriétés MaxValueForHierarchy1 et MaxValueForHierarchy2. | Integer |
locatorCount (Lecture seule) |
Nombre total des classes utilisées dans lesquelles chercher pour déterminer l'emplacement d'un réseau. | Integer |
locators (Lecture seule) |
Objet Localisateur Network Analyst. Cet objet permet d'obtenir les informations relatives au nom, au type de capture et à la requête de recherche pour les classes utilisées en vue de trouver des emplacements de réseau. | Object |
findClosest (Lecture seule) |
Indique comment la recherche est effectuée dans les entités de sources de données du réseau pour localiser les objets d'analyse de réseau. Cette propriété renvoie les mots-clés suivants :
| String |
searchTolerance (Lecture seule) |
Chaîne, dans laquelle les éléments sont séparés par des espaces, indiquant la tolérance de recherche et les unités utilisées pour rechercher les emplacements du réseau. | String |
excludeRestrictedElements (Lecture seule) | Indique si les objets d'analyse de réseau peuvent être placés uniquement sur des parties traversables des sources de données du réseau. Cette propriété renvoie les mots-clés suivants :
| String |
solverProperties (Lecture seule) |
Objet Solveur Network Analyst. Cet objet permet de déterminer les propriétés spécifiques du solveur dans une couche Network Analyst. | Object |
children (Lecture seule) |
Renvoie un objet d'énumération qui, à son tour, fournit des classes Network Analyst individuelles (par exemple, arrêts et itinéraires) sous la forme de couches. Utilisez les méthodes next et reset de l'objet énumération pour parcourir les classes Network Analyst. Cette méthode ne peut pas être utilisée avec la couche Network Analyst stockée sur le disque en tant que fichier de couches. | Object |
parameterCount (Lecture seule) |
Nombre total de paramètres d'attribut définis pour tous les attributs de réseau du jeu de données réseau sous-jacent utilisés par la couche Network Analyst. | Integer |
parameters (Lecture seule) |
Objet Paramètre d'attribut de réseau. Cet objet permet de déterminer les paramètres d'attribut utilisés pour l'analyse du réseau. | Object |
Exemple de code
Affiche les propriétés d'un fichier de couche Network Analyst spécifié.
# Name: NALayerProperties_ex01.py # Description: Lists all the properties that can be derived by describing a # network analysis layer. import arcpy #Arguments.. #in_layer is the name of the Network Analysis layer file to be described. in_layer = "C:/Data/Route.lyr" #Get the description object using Describe. desc = arcpy.Describe(in_layer) arcpy.AddMessage(" ") arcpy.AddMessage("== Description of network analysis layer " + in_layer + " ==") arcpy.AddMessage(" ") #Print general infomation. justify = 35 nds = desc.network solvername = desc.solverName arcpy.AddMessage("---- General information:") arcpy.AddMessage(" %*s: %s" % (justify, "Network" , nds.catalogPath)) arcpy.AddMessage(" %*s: %s" % (justify, "SolverName" , desc.solverName)) arcpy.AddMessage(" %*s: %s" % (justify, "Impedance" , desc.impedance)) arcpy.AddMessage(" %*s: %s" % (justify, "Accumulators" , desc.accumulators)) arcpy.AddMessage(" %*s: %s" % (justify, "Restrictions" , desc.restrictions)) arcpy.AddMessage(" %*s: %s" % (justify, "Ignore invalid locations?" , str(desc.ignoreInvalidLocations))) arcpy.AddMessage(" %*s: %s" % (justify, "UTurn policy" , desc.UTurns)) arcpy.AddMessage(" %*s: %s" % (justify, "Using hierarchy?" , desc.useHierarchy)) arcpy.AddMessage(" %*s: %s" % (justify, "Exclude Restricted Elements?" , desc.excludeRestrictedElements)) arcpy.AddMessage(" ") #A note about the dynamic properties (indicated by X in the help system) #In order to access the dynamic properties use Python's built in getattr() #function. In order to find out if a dynamic property is supported by the #describe object, use Python's built in hasattr() function. # Print attribute parameter information arcpy.AddMessage(" ---- Attribute Parameter information ----") count = desc.parameterCount if count == 0: arcpy.AddMessage(" ---- No Attribute Parameters defined ----") else: parameters = desc.parameters for i in range(0, count): attributeName = getattr(parameters,"attributeName" + str(i)) parameterName = getattr(parameters, "parameterName" + str(i)) parameterValue = getattr(parameters, "parameterValue" + str(i)) arcpy.AddMessage(" %*s: %s: %s" % (justify, attributeName, parameterName, parameterValue)) # Print hierarchy information if desc.useHierarchy.lower() == "use_hierarchy": arcpy.AddMessage(" ---- Hierarchy information ----") arcpy.AddMessage(" %*s: %s" % (justify, "Hierarchy Attribute Name", desc.hierarchyAttribute)) count = desc.hierarchyLevelCount arcpy.AddMessage(" %*s: %d" % (justify, "Hierarchy Level Count" , count)) for i in range(0, count ): levelRange = "" if i == 0: levelUB = getattr(desc,"maxValueForHierarchy" + str(i+1)) levelRange = "up to %s" % levelUB elif i == (count - 1): prevLevelUB = getattr(desc, "maxValueForHierarchy" + str(i)) levelRange = "%s and higher" % (prevLevelUB + 1) else: prevLevelUB = getattr(desc, "maxValueForHierarchy" + str(i)) levelUB = getattr(desc,"maxValueForHierarchy" + str(i + 1)) levelRange = "%s - %s" % ((prevLevelUB + 1), levelUB) arcpy.AddMessage(" %*s %d range: %s" % (justify, "level", (i + 1), levelRange)) arcpy.AddMessage(" ") # Print locator information. arcpy.AddMessage("---- Locator information:") count = desc.locatorCount arcpy.AddMessage(" %*s: %d" % (justify, "Count" , count)) arcpy.AddMessage(" %*s: %s" % (justify, "Find Closest?" , desc.findClosest)) arcpy.AddMessage(" %*s: %s" % (justify, "Search Tolerance", desc.searchTolerance)) arcpy.AddMessage(" %*s: %s" % (justify, "Exclude Restricted Elements", desc.excludeRestrictedElements)) locators = desc.locators for i in range(0, count): sourceName = getattr(locators, "source" + str(i)) sourceType = getattr(locators, "snapType" + str(i)) searchQuery = getattr(locators, "searchQuery" + str(i)) arcpy.AddMessage(" %*s: %s" %(justify, sourceName, sourceType)) arcpy.AddMessage(" %*s: %s" %(justify, sourceName, searchQuery))