Wegbeschreibung (Network Analyst)

Zusammenfassung

Generiert detaillierte Wegbeschreibungen aus einem Netzwerkanalyse-Layer mit Routen. Die Wegbeschreibungen können in eine Datei im Text-, XML- oder HTML-Format geschrieben werden. Bei Angabe einer geeigneten Formatvorlage können die Wegbeschreibungen auch in einem beliebigen anderen Dateiformat gespeichert werden.

Verwendung

  • Das Werkzeug berechnet den Netzwerkanalyse-Layer, wenn noch kein gültiges Ergebnis vorliegt.

Parameter

BeschriftungErläuterungDatentyp
Eingabe-Netzwerkanalyse-Layer

Der Netzwerkanalyse-Layer, für den Wegbeschreibungen generiert werden. Wegbeschreibungen können nur für Netzwerkanalyse-Layer für Routen, nächstgelegene Einrichtungen und Vehicle Routing Problems generiert werden.

Vorsicht:
Dieses Werkzeug unterstützt keine Endauslieferungs-Analyse-Layer, auch wenn dieser Layer-Typ Wegbeschreibungen unterstützt.

Network Analyst Layer
Ausgabedateityp

Gibt das Format an, das für die Ausgabe-Wegbeschreibungsdatei verwendet wird. Dieser Parameter wird ignoriert, wenn der Parameter "Formatvorlage" einen Wert aufweist.

  • XMLDie Ausgabe-Wegbeschreibungsinformationen werden als XML-Datei erstellt. Neben Wegbeschreibungsangaben und Längen- und Zeitinformationen für die Routen enthält die Datei auch Informationen zum Manövertyp und dem Kantenübergangswinkel für jede Wegbeschreibung.
  • TextDie Ausgabe-Wegbeschreibungsdatei wird als einfache Textdatei generiert, die die Wegbeschreibungsangaben, Längeninformationen und optional die Zeitinformationen für die Routen enthält.
  • HTMLDie Ausgabe-Wegbeschreibungsdatei wird als HTML-Datei mit dem Wegbeschreibungstext, der Länge und optional den Zeitangaben für die Routen generiert.
String
Ausgabe-Wegbeschreibungsdatei

Der vollständige Pfad zur erstellten Wegbeschreibungsdatei.

Wenn Sie für den Parameter Formatvorlage eine Formatvorlage angeben, stellen Sie sicher, dass das Dateisuffix der Ausgabe-Wegbeschreibungsdatei dem Dateityp entspricht, der durch die Formatvorlage erzeugt wird.

File
Länge in diesen Einheiten ausgeben

Gibt die linearen Einheiten an, die in der Wegbeschreibungsdatei verwendet werden. So können Sie beispielsweise die Wegbeschreibung in Meilen anzeigen, obwohl das Impedanzattribut in Metern angegeben war.

  • SeemeilenDie linearen Einheiten sind in Seemeilen angegeben.
  • FußDie linearen Einheiten sind in Fuß angegeben.
  • YardDie linearen Einheiten sind in Yard angegeben.
  • MeilenDie linearen Einheiten sind in Meilen angegeben.
  • MeterDie linearen Einheiten sind in Metern angegeben.
  • KilometerDie linearen Einheiten sind in Kilometer angegeben.
String
Fahrzeit ausgeben
(optional)

Gibt an, ob die Fahrzeit in der Wegbeschreibungsdatei angegeben werden soll.

  • Aktiviert: Die Fahrzeit wird in der Wegbeschreibungsdatei angegeben. Dies ist die Standardeinstellung.
  • Deaktiviert: Die Fahrzeit wird in der Wegbeschreibungsdatei nicht angegeben.
Boolean
Zeitattribut
(optional)

Das zeitbasierte Kostenattribut, das verwendet wird, um die Fahrzeiten in der Wegbeschreibung anzugeben. Das Kostenattribut muss auf dem vom Eingabe-Netzwerkanalyse-Layer verwendeten Netzwerk-Dataset vorhanden sein.

String
Sprache
(optional)

Die Sprache, die für die Wegbeschreibung verwendet wird.

Verwenden Sie für diesen Parameterwert einen aus zwei oder fünf Zeichen bestehenden Sprachcode, der eine der für die Erstellung von Wegbeschreibungen verfügbaren Sprachen angibt. In Python können Sie mit der Funktion ListDirectionsLanguages eine Liste der verfügbaren Sprachcodes abrufen.

String
Style-Name
(optional)

Gibt den Formatierungs-Style für Wegbeschreibungen an.

  • Druckfähige WegbeschreibungEs wird eine druckbare Wegbeschreibung verwendet.
  • Wegbeschreibung für ein NavigationsgerätEs wird eine Wegbeschreibung für ein Navigationsgerät in einem Fahrzeug verwendet.
  • WegbeschreibungEs wird eine Wegbeschreibung für Fußgänger verwendet.
String
Stylesheet
(optional)

Die Formatvorlage, die für die Erstellung eines formatierten Ausgabedateityps (z. B. eine PDF-, Word- oder HTML-Datei) verwendet wird. Das Suffix der Datei im Parameter für die Ausgabe-Wegbeschreibungsdatei muss dem Dateityp entsprechen, der durch die Formatvorlage generiert wird. Das Werkzeug überschreibt den Parameter für den Ausgabedateityp, wenn für das Stylesheet ein Wert angegeben ist.

Tipp:

Um benutzerdefinierte HTML- und Text-Formatvorlagen zu erstellen, kopieren und bearbeiten Sie die Formatvorlagen aus Network Analyst. Die Formatvorlagen sind im Verzeichnis <ArcGIS installation directory>\Pro\Resources\NetworkAnalyst\Directions\Styles verfügbar. Die HTML-Formatvorlage ist Dir2PHTML.xsl, und die Text-Formatvorlage ist Dir2PlainText.xsl.

File

Abgeleitete Ausgabe

BeschriftungErläuterungDatentyp
Netzwerkanalyse-Layer

Der aktualisierte Netzwerkanalyse-Layer mit Routen.

Network Analyst Layer

arcpy.na.Directions(in_network_analysis_layer, file_type, out_directions_file, report_units, {report_time}, {time_attribute}, {language}, {style_name}, {stylesheet})
NameErläuterungDatentyp
in_network_analysis_layer

Der Netzwerkanalyse-Layer, für den Wegbeschreibungen generiert werden. Wegbeschreibungen können nur für Netzwerkanalyse-Layer für Routen, nächstgelegene Einrichtungen und Vehicle Routing Problems generiert werden.

Vorsicht:
Dieses Werkzeug unterstützt keine Endauslieferungs-Analyse-Layer, auch wenn dieser Layer-Typ Wegbeschreibungen unterstützt.

Network Analyst Layer
file_type

Gibt das Format an, das für die Ausgabe-Wegbeschreibungsdatei verwendet wird. Dieser Parameter wird ignoriert, wenn der Parameter "Formatvorlage" einen Wert aufweist.

  • XMLDie Ausgabe-Wegbeschreibungsinformationen werden als XML-Datei erstellt. Neben Wegbeschreibungsangaben und Längen- und Zeitinformationen für die Routen enthält die Datei auch Informationen zum Manövertyp und dem Kantenübergangswinkel für jede Wegbeschreibung.
  • TEXTDie Ausgabe-Wegbeschreibungsdatei wird als einfache Textdatei generiert, die die Wegbeschreibungsangaben, Längeninformationen und optional die Zeitinformationen für die Routen enthält.
  • HTMLDie Ausgabe-Wegbeschreibungsdatei wird als HTML-Datei mit dem Wegbeschreibungstext, der Länge und optional den Zeitangaben für die Routen generiert.
String
out_directions_file

Wenn Sie für den stylesheet-Parameter eine Formatvorlage angeben, stellen Sie sicher, dass das Dateisuffix für out_directions_file dem Dateityp entspricht, der durch die Formatvorlage erzeugt wird.

File
report_units

Gibt die linearen Einheiten an, die in der Wegbeschreibungsdatei verwendet werden. So können Sie beispielsweise die Wegbeschreibung in Meilen anzeigen, obwohl das Impedanzattribut in Metern angegeben war.

  • FeetDie linearen Einheiten sind in Fuß angegeben.
  • YardsDie linearen Einheiten sind in Yard angegeben.
  • MilesDie linearen Einheiten sind in Meilen angegeben.
  • MetersDie linearen Einheiten sind in Metern angegeben.
  • KilometersDie linearen Einheiten sind in Kilometer angegeben.
  • NauticalMilesDie linearen Einheiten sind in Seemeilen angegeben.
String
report_time
(optional)

Gibt an, ob die Fahrzeit in der Wegbeschreibungsdatei angegeben werden soll.

  • NO_REPORT_TIMEDie Fahrzeit wird in der Wegbeschreibungsdatei nicht angegeben.
  • REPORT_TIMEDie Fahrzeit wird in der Wegbeschreibungsdatei angegeben. Dies ist die Standardeinstellung.
Boolean
time_attribute
(optional)

Das zeitbasierte Kostenattribut, das verwendet wird, um die Fahrzeiten in der Wegbeschreibung anzugeben. Das Kostenattribut muss auf dem vom Eingabe-Netzwerkanalyse-Layer verwendeten Netzwerk-Dataset vorhanden sein.

String
language
(optional)

Die Sprache, die für die Wegbeschreibung verwendet wird.

Verwenden Sie für diesen Parameterwert einen aus zwei oder fünf Zeichen bestehenden Sprachcode, der eine der für die Erstellung von Wegbeschreibungen verfügbaren Sprachen angibt. In Python können Sie mit der Funktion ListDirectionsLanguages eine Liste der verfügbaren Sprachcodes abrufen.

String
style_name
(optional)

Gibt den Formatierungs-Style für Wegbeschreibungen an.

  • NA DesktopEs wird eine druckbare Wegbeschreibung verwendet.
  • NA NavigationEs wird eine Wegbeschreibung für ein Navigationsgerät in einem Fahrzeug verwendet.
  • NA CampusEs wird eine Wegbeschreibung für Fußgänger verwendet.
String
stylesheet
(optional)

Die Formatvorlage, die für die Erstellung eines formatierten Ausgabedateityps (z. B. eine PDF-, Word- oder HTML-Datei) verwendet wird. Das Suffix der Datei im Parameter für die Ausgabe-Wegbeschreibungsdatei muss dem Dateityp entsprechen, der durch die Formatvorlage generiert wird. Das Werkzeug überschreibt den Parameter für den Ausgabedateityp, wenn für das Stylesheet ein Wert angegeben ist.

Tipp:

Um benutzerdefinierte HTML- und Text-Formatvorlagen zu erstellen, kopieren und bearbeiten Sie die Formatvorlagen aus Network Analyst. Die Formatvorlagen sind im Verzeichnis <ArcGIS installation directory>\Pro\Resources\NetworkAnalyst\Directions\Styles verfügbar. Die HTML-Formatvorlage ist Dir2PHTML.xsl, und die Text-Formatvorlage ist Dir2PlainText.xsl.

File

Abgeleitete Ausgabe

NameErläuterungDatentyp
output_layer

Der aktualisierte Netzwerkanalyse-Layer mit Routen.

Network Analyst Layer

Codebeispiel

Wegbeschreibung: Beispiel 1 (Python-Fenster)

Das folgende Codebeispiel veranschaulicht die Verwendung der Funktion Directions mit allen Parametern:

arcpy.na.Directions("Route", "TEXT", "C:/Data/Route_Directions.txt", "Miles",
                    "REPORT_TIME", "Minutes")
Wegbeschreibung: Beispiel 2 (Workflow)

Das folgende eigenständige Python-Skript veranschaulicht, wie Sie mit der Funktion Directions eine Wegbeschreibung für eine Route in einer HTML-Datei generieren.

# 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"
    )

    # 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))

Lizenzinformationen

  • Basic: Erfordert Network Analyst
  • Standard: Erfordert Network Analyst
  • Advanced: Erfordert Network Analyst

Verwandte Themen