Mise à jour du paramètre d’attribut d’analyse de la couche (Network Analyst)

Récapitulatif

Met à jour la valeur d'un paramètre d'attribut de réseau dans une couche d'analyse de réseau. Cet outil permet de mettre à jour la valeur d'un paramètre attributaire pour une couche d'analyse de réseau avant l'analyse avec l'outil Rechercher. Il garantit que l'opération d'analyse utilise la valeur spécifiée du paramètre d'attribut pour produire des résultats appropriés.

Utilisation

Syntaxe

UpdateAnalysisLayerAttributeParameter_na (in_network_analysis_layer, parameterized_attribute, attribute_parameter_name, {attribute_parameter_value})
ParamètreExplicationType de données
in_network_analysis_layer

Couche d'analyse de réseau pour laquelle la valeur du paramètre attributaire doit être mise à jour.

Network Analyst Layer
parameterized_attribute

Attribut de réseau dont le paramètre doit être mis à jour.

String
attribute_parameter_name

Paramètre de l'attribut de réseau devant être mis à jour. Les paramètres de type Objet ne peuvent pas être mis à jour à l'aide de l'outil.

String
attribute_parameter_value
(Facultatif)

Valeur à définir pour le paramètre d'attribut. Il peut s'agir d'une chaîne, d'un nombre, d'une date ou d'une valeur booléenne (vrai, faux). Si la valeur n'est pas spécifiée, la valeur du paramètre d'attribut est définie comme étant Null.

AstuceAstuce :

Si la valeur de paramètre contient un tableau, séparez les éléments du tableau à l'aide de la valeur définie pour le caractère de séparation localisé. Par exemple, aux Etats-Unis, vous utiliseriez très probablement la virgule pour séparer les éléments. Ainsi un tableau de trois nombres pourrait avoir l'aspect suivant : "5,10,15".

String

Exemple de code

Exemple 1 d'utilisation de l'outil Mise à jour du paramètre de l'attribut d'analyse de la couche (fenêtre Python)

Exécute l'outil avec tous les paramètres.

import arcpy
arcpy.UpdateAnalysisLayerAttributeParameter_na("Route","HeightRestriction",
                                               "MaxHeight",12.0)
Exemple 2 d'utilisation de l'outil Mise à jour du paramètre de l'attribut d'analyse de la couche (workflow)

Le script Python autonome suivant illustre l'utilisation de l'outil Mise à jour du paramètre de l'attribut d'analyse de la couche pour trouver le meilleur itinéraire qui évite les passages supérieurs de faible dégagement ou les tunnels pour certains véhicules.

# Name: UpdateAnalysisLayerAttributeParameter_Workflow.py
# Description: Find the best route that avoids low clearance overpasses or 
#              tunnels for certain vehicles and save results to a layer file.
# Requirements: Network Analyst Extension 

#Import system modules
import arcpy
from arcpy import env

try:
    #Check out the Network Analyst extension license
    arcpy.CheckOutExtension("Network")

    #Set environment settings
    env.workspace = "C:/data/RhodeIsland.gdb"
    env.overwriteOutput = True
    
    #Set local variables
    inNetworkDataset = "Transportation/Streets_ND"
    outNALayer = "BestTruckRoute"
    impedanceAttribute = "TravelTime"
    accumulateAttribute = ['Length']
    parameterizedAttribute = "HeightRestriction"    
    restrictions = ["Oneway", parameterizedAttribute, "TurnRestriction"]
    searchTolerance = "2000 Meters"
    parameterName = "VehicleHeight"
    truckHeight = 15
    inStops = "Analysis/DeliveryLocations"
    outLayerFile = "C:/data/output" + "/" + outNALayer + ".lyr"
    
    #Make a new route layer. Along with the total travel time, we also want to
    #find out the total distance. So we accumulate "Length" attribute. We want 
    #to obey the oneway, turn restrictions and since we are routing trucks that
    #need a particular clearence, we want to use Height restriction.
    arcpy.MakeRouteLayer_na(inNetworkDataset, outNALayer, impedanceAttribute, 
                            "", "", "", accumulateAttribute,"NO_UTURNS",
                            restrictions)
    
    #Load the Delivery locations as stops using default field map
    arcpy.AddLocations_na(outNALayer, "Stops", inStops, "", searchTolerance)
    
    #As we wish to route trucks which require a clearance of 15 meters,
    #we will set the VehicleHeight parameter on HeightRestriction attribute.
    #This would mean that all streets which have a clearance of less than 15 
    #meters will be restricted.
    arcpy.UpdateAnalysisLayerAttributeParameter_na(outNALayer, 
                                                   parameterizedAttribute,
                                                   parameterName, truckHeight)
    
    #Solve the route layer
    arcpy.Solve_na(outNALayer)
    
    #Save the solved route layer as a layer file on disk using relative paths
    arcpy.SaveToLayerFile_management(outNALayer,outLayerFile,"RELATIVE")
    
    print "Script completed successfully"

except Exception as e:
    # If an error occurred, print line number and error message
    import traceback, sys
    tb = sys.exc_info()[2]
    print "An error occured on line %i" % tb.tb_lineno
    print str(e)

Environnements

Rubriques connexes

Informations de licence

ArcView : Oui
ArcEditor : Oui
ArcInfo : Oui

7/10/2012