Feuilles de route (Network Analyst)

Synthèse

Génère une feuille de route tournant par tournant à partir d'une couche d'analyse de réseau avec des itinéraires. La feuille de route peut être enregistrée dans un fichier au format texte, XML ou HTML. Si vous fournissez une feuille de style appropriée, la feuille de route peut être enregistrée dans un autre format de fichier.

Utilisation

  • L'outil résout la couche d'analyse du réseau s'il ne possède pas déjà un résultat valide. Il n'est donc pas indispensable de résoudre la couche d'analyse du réseau avant de générer la feuille de route.

Paramètres

ÉtiquetteExplicationType de données
Couche d'analyse de réseau en entrée

Couche d'analyse de réseau pour laquelle la feuille de route est générée. Il est possible de générer la feuille de route uniquement pour les couches d'analyse de réseau itinéraire, ressource la plus proche et tournée de véhicules.

Network Analyst Layer
Type de fichier en sortie

Format du fichier de directions en sortie. Ce paramètre est ignoré si le paramètre de feuille de style possède une valeur.

  • XMLLe fichier de directions en sortie est généré en tant que fichier XML. Outre les chaînes de direction et les informations liées à la longueur et au temps pour les itinéraires, le fichier contiendra également les informations concernant le type de manœuvre et l'angle de tournant pour chaque feuille de route.
  • TexteLe fichier de direction en sortie sera généré en tant que fichier TXT simple qui contient les chaînes de direction, la longueur et, facultativement, les informations de temps pour les itinéraires.
  • HTMLLe fichier de direction en sortie sera généré en tant que fichier HTML contenant les chaînes de direction, la longueur et, facultativement, les informations de temps pour les itinéraires.
String
Fichier de feuilles de route en sortie

Chemin complet de la feuille de route qui sera écrite.

Si vous fournissez une feuille de style dans le paramètre Stylesheet (Feuille de style), vérifiez que le suffixe du fichier de feuille de route en sortie correspond au type de fichier que votre feuille de style produit.

File
Consigner la longueur dans ces unités

Précise les unités linéaires dans lesquelles les informations relatives à la longueur seront consignées dans le fichier de directions. Par exemple, bien que votre impédance soit en mètres, vous pouvez afficher des feuilles de route en miles.

  • Milles marinsMilles marins
  • PiedsPieds
  • YardsYards
  • MillesMilles
  • MètresMètres
  • KilomètresKilomètres
String
Consigner le temps de trajet
(Facultatif)
  • Activé – Faire état des temps de déplacement dans le fichier de directions. Il s'agit de la valeur par défaut.
  • Désactivé – Ne pas faire état des temps de déplacement dans le fichier de directions.
Boolean
Attribut de temps
(Facultatif)

Attribut de coût basé sur le temps pour fournir les temps de déplacement dans la feuille de route. L'attribut de coût doit exister sur le jeu de données réseau utilisé par la couche d'analyse de réseau en entrée.

String
Langue
(Facultatif)

Choisissez un langage dans lequel générer des trajets.

L’entrée pour ce paramètre doit être un code de langue à deux ou cinq caractères correspondant à une des langues disponibles pour générer la feuille de route. Dans Python, vous pouvez récupérer la liste des codes de langue disponibles à l’aide de la fonction ListDirectionsLanguages.

String
Nom du style
(Facultatif)

Choisissez le nom du style de mise en forme pour la feuille de route.

  • Trajets imprimablesFeuille de route tournant par tournant imprimable
  • Trajets pour un appareil de navigationFeuille de route conçue pour un dispositif de navigation dans un véhicule
  • Itinéraire à piedFeuille de route à pied tournant par tournant, conçue pour les itinéraires piétons
String
Feuille de style
(Facultatif)

Feuille de style permettant de générer un type de fichier en sortie dans un format (tel que PDF, Word ou HTML). Le suffixe du fichier dans le paramètre Output Directions File (Fichier de feuille de route en sortie) doit correspondre au type de fichier que la feuille de style génère. L'outil Feuille de route remplace le paramètre Type de fichier en sortie si ce paramètre contient une valeur.

Conseil :

Si vous souhaitez accélérer la création de votre propre texte et de vos feuilles de style HTML, copiez et modifiez les feuilles de style que Network Analyst utilise. Vous les trouverez dans le répertoire suivant : <ArcGIS installation directory>\ArcGIS\ArcGIS Pro\Resources\NetworkAnalyst\Directions\Styles. La feuille de style est Dir2PHTML.xsl et la feuille de style de texte est Dir2PlainText.xsl.

File

Sortie obtenue

ÉtiquetteExplicationType de données
Couche d'analyse de réseau

Couche d’analyse de réseau mise à jour avec des itinéraires.

Couche Network Analyst

arcpy.na.Directions(in_network_analysis_layer, file_type, out_directions_file, report_units, {report_time}, {time_attribute}, {language}, {style_name}, {stylesheet})
NomExplicationType de données
in_network_analysis_layer

Couche d'analyse de réseau pour laquelle la feuille de route est générée. Il est possible de générer la feuille de route uniquement pour les couches d'analyse de réseau itinéraire, ressource la plus proche et tournée de véhicules.

Network Analyst Layer
file_type

Format du fichier de directions en sortie. Ce paramètre est ignoré si le paramètre de feuille de style possède une valeur.

  • XMLLe fichier de directions en sortie est généré en tant que fichier XML. Outre les chaînes de direction et les informations liées à la longueur et au temps pour les itinéraires, le fichier contiendra également les informations concernant le type de manœuvre et l'angle de tournant pour chaque feuille de route.
  • TEXTLe fichier de direction en sortie sera généré en tant que fichier TXT simple qui contient les chaînes de direction, la longueur et, facultativement, les informations de temps pour les itinéraires.
  • HTMLLe fichier de direction en sortie sera généré en tant que fichier HTML contenant les chaînes de direction, la longueur et, facultativement, les informations de temps pour les itinéraires.
String
out_directions_file

Si vous fournissez une feuille de style dans le paramètre stylesheet, vérifiez que le suffixe du fichier out_directions_file correspond au type de fichier que votre feuille de style produit.

File
report_units

Précise les unités linéaires dans lesquelles les informations relatives à la longueur seront consignées dans le fichier de directions. Par exemple, bien que votre impédance soit en mètres, vous pouvez afficher des feuilles de route en miles.

  • FeetPieds
  • YardsYards
  • MilesMilles
  • MetersMètres
  • KilometersKilomètres
  • NauticalMilesMilles marins
String
report_time
(Facultatif)
  • NO_REPORT_TIMENe fait pas état des temps de déplacement dans le fichier de directions.
  • REPORT_TIMEFait état des temps de déplacement dans le fichier de directions. Il s’agit de l’option par défaut.
Boolean
time_attribute
(Facultatif)

Attribut de coût basé sur le temps pour fournir les temps de déplacement dans la feuille de route. L'attribut de coût doit exister sur le jeu de données réseau utilisé par la couche d'analyse de réseau en entrée.

String
language
(Facultatif)

Choisissez un langage dans lequel générer des trajets.

L’entrée pour ce paramètre doit être un code de langue à deux ou cinq caractères correspondant à une des langues disponibles pour générer la feuille de route. Dans Python, vous pouvez récupérer la liste des codes de langue disponibles à l’aide de la fonction ListDirectionsLanguages.

String
style_name
(Facultatif)

Choisissez le nom du style de mise en forme pour la feuille de route.

  • NA DesktopFeuille de route tournant par tournant imprimable
  • NA NavigationFeuille de route conçue pour un dispositif de navigation dans un véhicule
  • NA CampusFeuille de route à pied tournant par tournant, conçue pour les itinéraires piétons
String
stylesheet
(Facultatif)

Feuille de style permettant de générer un type de fichier en sortie dans un format (tel que PDF, Word ou HTML). Le suffixe du fichier dans le paramètre Output Directions File (Fichier de feuille de route en sortie) doit correspondre au type de fichier que la feuille de style génère. L'outil Feuille de route remplace le paramètre Type de fichier en sortie si ce paramètre contient une valeur.

Conseil :

Si vous souhaitez accélérer la création de votre propre texte et de vos feuilles de style HTML, copiez et modifiez les feuilles de style que Network Analyst utilise. Vous les trouverez dans le répertoire suivant : <ArcGIS installation directory>\ArcGIS\ArcGIS Pro\Resources\NetworkAnalyst\Directions\Styles. La feuille de style est Dir2PHTML.xsl et la feuille de style de texte est Dir2PlainText.xsl.

File

Sortie obtenue

NomExplicationType de données
output_layer

Couche d’analyse de réseau mise à jour avec des itinéraires.

Couche Network Analyst

Exemple de code

Exemple 1 d'utilisation de l'outil Feuille de route (fenêtre Python)

Exécutez l'outil Feuille de route avec tous les paramètres.

arcpy.na.Directions("Route", "TEXT", "C:/Data/Route_Directions.txt", "Miles",
                    "REPORT_TIME", "Minutes")
Exemple 2 d'utilisation de l'outil Feuille de route (workflow)

Le script Python autonome suivant illustre l'utilisation de l'outil Directions pour générer des trajets dans un fichier HTML pour un itinéraire.

# Name: Directions_Workflow.py
# Description: Generate driving directions in an html file for a route that
#              visits the store locations in the best sequence in order to
#              minimize the total travel time
# Requirements: Network Analyst Extension

#Import system modules
import arcpy
from arcpy import env
import os

try:
    #Check out Network Analyst license if available. Fail if the Network Analyst license is not available.
    if arcpy.CheckExtension("network") == "Available":
        arcpy.CheckOutExtension("network")
    else:
        raise arcpy.ExecuteError("Network Analyst Extension license is not available.")
    
    #Set environment settings
    output_dir = "C:/Data"
    #The NA layer's data will be saved to the workspace specified here
    env.workspace = os.path.join(output_dir, "Output.gdb")
    env.overwriteOutput = True

    #Set inputs and outputs
    input_gdb = "C:/Data/SanFrancisco.gdb"
    network = os.path.join(input_gdb, "Transportation", "Streets_ND")
    layer_name = "StoreRoute"
    travel_mode = "Driving Time"
    start_location = os.path.join(input_gdb, "Analysis", "DistributionCenter")
    store_locations = os.path.join(input_gdb, "Analysis", "Stores")
    output_directions = os.path.join(output_dir,
                                                layer_name + "_Directions.html")
    output_layer_file = os.path.join(output_dir, layer_name + ".lyrx")

    #Create a new route layer. The route starts at the distribution center and
    #visits the stores in the best order to yield the shortest travel time.
    result_object = arcpy.na.MakeRouteAnalysisLayer(network, layer_name,
                                        travel_mode, "PRESERVE_FIRST",
                                        time_of_day="8:00 AM")

    #Get the layer object from the result object. The route layer can
    #now be referenced using the layer object.
    layer_object = result_object.getOutput(0)

    #Get the names of all the sublayers within the route layer.
    sublayer_names = arcpy.na.GetNAClassNames(layer_object)
    #Stores the layer names that we will use later
    stops_layer_name = sublayer_names["Stops"]

    #Load the distribution center as the start location using default field
    #mappings and search tolerance
    arcpy.na.AddLocations(layer_object, stops_layer_name, start_location, "",
                                                                            "")

    #Load the store locations as stops. Make sure the store locations are
    #appended to the Stops sublayer so the distribution center you just loaded
    #isn't overwritten. Map the ServiceTime field from the input data to the
    #Attr_[impedance] property in the Stops sublayer so that the time it takes to
    #service each store is included in the total travel time for the route.
    #Figure out what the impedance attrbute is
    solver_props = arcpy.na.GetSolverProperties(layer_object)
    impedance = solver_props.impedance
    #Handle field mappings
    field_mappings = arcpy.na.NAClassFieldMappings(layer_object,
                                                            stops_layer_name)
    field_mappings["Name"].mappedFieldName = "Name"
    field_mappings["Attr_" + impedance].mappedFieldName = "ServiceTime"
    arcpy.na.AddLocations(layer_object, stops_layer_name, store_locations,
                          field_mappings, "", append="APPEND",
                          exclude_restricted_elements = "EXCLUDE")

    #Generate driving directions in an HTML file
    arcpy.na.Directions(layer_object, "HTML", output_directions, "Miles",
                        "REPORT_TIME", impedance)

    #Save the solved na layer as a layer file on disk
    layer_object.saveACopy(output_layer_file)

    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 occurred on line %i" % tb.tb_lineno)
    print(str(e))

Environnements

Cas particuliers

Informations de licence

  • Basic: Nécessite Network Analyst
  • Standard: Nécessite Network Analyst
  • Advanced: Nécessite Network Analyst

Rubriques connexes