GetSolverProperties (arcpy.na)
Récapitulatif
Renvoie un objet des propriétés du solveur de Network Analyst selon le type de la couche Network Analyst spécifié en tant qu'argument. L'objet des propriétés du solveur permet de mettre à jour les propriétés d'analyse pour la couche.
Discussion
GetSolverProperties joue le rôle du point d'entrée principal lors de la modification des propriétés d'analyse d'une couche Network Analyst. Il renvoie un objet des propriétés du solveur distinct selon la couche Network Analyst. Il existe six types d'objets de propriétés de solveur :RouteSolverProperties, ClosestFacilitySolverProperties, ServiceAreaSolverProperties, ODCostMatrixSolverProperties, VehicleRoutingProblemSolverPropertieset LocationAllocationSolverProperties. Chaque objet de propriétés du solveur permet un accès en lecture et en écriture aux propriétés d'analyse spécifiques à une couche Network Analyst.
Syntaxe
Paramètre | Explication | Type de données |
network_analyst_layer |
A variable that references a layer object obtained from a Network Analyst layer. It can be derived from existing layers in a map document or by specifying the catalog path to the Network Analyst layer file as an argument to the Layer class. The isNetworkAnalystLayer property on the layer object can be used to identify whether a given layer object is a Network Analyst layer. | Layer |
Type de données | Explication |
Object |
Objet des propriétés du solveur qui correspond au type de la couche Network Analyst. |
Exemple de code
Cet exemple indique comment localiser toutes les couches Network Analyst dans un document ArcMap et modifier leurs propriétés d'analyse de manière qu'elles utilisent toutes une hiérarchie. Il suppose que certaines couches Network Analyst ont déjà été ajoutées à un document ArcMap.
import arcpy
#Get a list of all the layers in the current map document
mxd = arcpy.mapping.MapDocument("CURRENT")
lyrs = arcpy.mapping.ListLayers(mxd)
#Filter the list to obtain only the network analyst layers
na_layers = [lyr for lyr in lyrs if lyr.isNetworkAnalystLayer]
#update the useHierarchy property
for na_layer in na_layers:
na_solver_props = arcpy.na.GetSolverProperties(na_layer)
na_solver_props.useHierarchy = True