Indicaciones (Network Analyst)

Resumen

Genera indicaciones giro a giro de una capa de análisis de red con rutas. Las direcciones se escriben en un archivo de texto, XML, o formato HTML. Si proporciona una hoja de estilo adecuada, las indicaciones se pueden escribir en cualquier otro formato de archivo.

Uso

  • La herramienta resuelve la capa de análisis de red si aún no tiene un resultado válido.

Parámetros

EtiquetaExplicaciónTipo de datos
Capa de análisis de red de entrada

Capa de análisis de red para la que se generarán las indicaciones. Las direcciones se pueden generar sólo para ruta, instalación más cercana, capas de análisis de red de problema de generación de rutas para vehículos.

Precaución:
Esta herramienta no admite las capas de análisis de entrega de última milla aunque este tipo de capa admita direcciones.

Network Analyst Layer
Tipo de archivo de salida

Especifica el formato que se utilizará en el archivo de direcciones de salida. Este parámetro se ignora si el parámetro de hoja de estilo tiene un valor.

  • XMLEl archivo de indicaciones de salida se generará como un archivo XML. Además de las cadenas de texto de las indicaciones y la longitud e información de tiempo de las rutas, el archivo también contiene información sobre el tipo de maniobra y el ángulo de giro para cada indicación.
  • TextoEl archivo de indicaciones de salida se generará como un archivo TXT simple que contiene las cadenas de caracteres de las indicaciones, la longitud y, opcionalmente, la información de tiempo para las rutas.
  • HTMLEl archivo de indicaciones de salida se generará como un archivo de HTML que contiene las cadenas de caracteres de las indicaciones, la longitud y, opcionalmente, la información de tiempo para las rutas.
String
Archivo de indicaciones de salida

Se escribirán las rutas de acceso completas para el archivo de indicaciones.

Si proporciona una hoja de estilo en el parámetro Hoja de estilo, asegúrese de que el sufijo de Archivo de indicaciones de salida coincida con el tipo de archivo que produce la hoja de estilo.

File
Informa la longitud en estas unidades

Especifica las unidades lineales que se utilizarán en el archivo de indicaciones. Por ejemplo, aunque el atributo de impedancia tiene unidades en metros, puede mostrar las direcciones en millas.

  • Millas náuticasLas unidades lineales serán millas náuticas.
  • PiesLas unidades lineales serán pies.
  • YardasLas unidades lineales serán yardas.
  • MillasLas unidades lineales serán millas.
  • MetrosLas unidades lineales serán metros.
  • KilómetrosLas unidades lineales serán kilómetros.
String
Informar el tiempo de viaje
(Opcional)

Especifica si el tiempo de viaje se notificará en el archivo de direcciones.

  • Activado: el tiempo de viaje se notificará en el archivo de direcciones. Esta es la opción predeterminada.
  • Desactivado: el tiempo de viaje no se notificará en el archivo de direcciones.
Boolean
Atributo de tiempo
(Opcional)

Atributo de coste basado en el tiempo que se utilizará para proporcionar los tiempos de viaje en las indicaciones. El atributo de coste debe existir en el dataset de red utilizado por la capa de análisis de red de entrada.

String
Idioma
(Opcional)

Idioma que se utilizará en las indicaciones de conducción.

Utilice un código de idioma de 2 o 5 caracteres que represente uno de los idiomas disponibles para la generación de indicaciones en el valor de este parámetro. En Python, puede recuperar una lista de los códigos de idioma disponibles con la función ListDirectionsLanguages.

String
Nombre de estilo
(Opcional)

Especifica el estilo de formato que se utilizará para las indicaciones.

  • Indicaciones para conducir para imprimirSe utilizarán indicaciones paso a paso imprimibles.
  • Indicaciones para conducir para un dispositivo de navegaciónSe utilizarán indicaciones paso a paso, diseñadas para un dispositivo de navegación desde el vehículo.
  • Indicaciones para ir a pieSe utilizarán indicaciones para caminar giro a giro, que están diseñados para las rutas peatonales
String
Hoja de estilos
(Opcional)

Hoja de estilo que se utilizará para generar un tipo de archivo de salida formateado (como PDF, Word o HTML). El sufijo del archivo del parámetro Archivo de indicaciones de salida debe coincidir con el tipo de archivo generado por la hoja de estilo. La herramienta invalida el parámetro del tipo de archivo de salida si este parámetro contiene un valor.

Sugerencia:

Para crear hojas de estilo de texto y HTML personalizadas, copie y edite las hojas de estilo de Network Analyst. Las hojas de estilo están disponible en el directorio <ArcGIS installation directory>\Pro\Resources\NetworkAnalyst\Directions\Styles. La hoja de estilo HTML es Dir2PHTML.xsl y la hoja de estilo de texto, Dir2PlainText.xsl.

File

Salida derivada

EtiquetaExplicaciónTipo de datos
Capa de análisis de red

La capa de análisis de red actualizada con rutas.

Network Analyst Layer

arcpy.management.Directions(in_network_analysis_layer, file_type, out_directions_file, report_units, {report_time}, {time_attribute}, {language}, {style_name}, {stylesheet})
NombreExplicaciónTipo de datos
in_network_analysis_layer

Capa de análisis de red para la que se generarán las indicaciones. Las direcciones se pueden generar sólo para ruta, instalación más cercana, capas de análisis de red de problema de generación de rutas para vehículos.

Precaución:
Esta herramienta no admite las capas de análisis de entrega de última milla aunque este tipo de capa admita direcciones.

Network Analyst Layer
file_type

Especifica el formato que se utilizará en el archivo de direcciones de salida. Este parámetro se ignora si el parámetro de hoja de estilo tiene un valor.

  • XMLEl archivo de indicaciones de salida se generará como un archivo XML. Además de las cadenas de texto de las indicaciones y la longitud e información de tiempo de las rutas, el archivo también contiene información sobre el tipo de maniobra y el ángulo de giro para cada indicación.
  • TEXTEl archivo de indicaciones de salida se generará como un archivo TXT simple que contiene las cadenas de caracteres de las indicaciones, la longitud y, opcionalmente, la información de tiempo para las rutas.
  • HTMLEl archivo de indicaciones de salida se generará como un archivo de HTML que contiene las cadenas de caracteres de las indicaciones, la longitud y, opcionalmente, la información de tiempo para las rutas.
String
out_directions_file

Si proporciona una hoja de estilo para el parámetro stylesheet, asegúrese de que el sufijo de out_directions_file coincida con el tipo de archivo que produce la hoja de estilo.

File
report_units

Especifica las unidades lineales que se utilizarán en el archivo de indicaciones. Por ejemplo, aunque el atributo de impedancia tiene unidades en metros, puede mostrar las direcciones en millas.

  • FeetLas unidades lineales serán pies.
  • YardsLas unidades lineales serán yardas.
  • MilesLas unidades lineales serán millas.
  • MetersLas unidades lineales serán metros.
  • KilometersLas unidades lineales serán kilómetros.
  • NauticalMilesLas unidades lineales serán millas náuticas.
String
report_time
(Opcional)

Especifica si el tiempo de viaje se notificará en el archivo de direcciones.

  • NO_REPORT_TIMEEl tiempo de viaje no se notificará en el archivo de direcciones.
  • REPORT_TIMEEl tiempo de viaje se notificará en el archivo de direcciones. Esta es la opción predeterminada.
Boolean
time_attribute
(Opcional)

Atributo de coste basado en el tiempo que se utilizará para proporcionar los tiempos de viaje en las indicaciones. El atributo de coste debe existir en el dataset de red utilizado por la capa de análisis de red de entrada.

String
language
(Opcional)

Idioma que se utilizará en las indicaciones de conducción.

Utilice un código de idioma de 2 o 5 caracteres que represente uno de los idiomas disponibles para la generación de indicaciones en el valor de este parámetro. En Python, puede recuperar una lista de los códigos de idioma disponibles con la función ListDirectionsLanguages.

String
style_name
(Opcional)

Especifica el estilo de formato que se utilizará para las indicaciones.

  • NA DesktopSe utilizarán indicaciones paso a paso imprimibles.
  • NA NavigationSe utilizarán indicaciones paso a paso, diseñadas para un dispositivo de navegación desde el vehículo.
  • NA CampusSe utilizarán indicaciones para caminar giro a giro, que están diseñados para las rutas peatonales
String
stylesheet
(Opcional)

Hoja de estilo que se utilizará para generar un tipo de archivo de salida formateado (como PDF, Word o HTML). El sufijo del archivo del parámetro Archivo de indicaciones de salida debe coincidir con el tipo de archivo generado por la hoja de estilo. La herramienta invalida el parámetro del tipo de archivo de salida si este parámetro contiene un valor.

Sugerencia:

Para crear hojas de estilo de texto y HTML personalizadas, copie y edite las hojas de estilo de Network Analyst. Las hojas de estilo están disponible en el directorio <ArcGIS installation directory>\Pro\Resources\NetworkAnalyst\Directions\Styles. La hoja de estilo HTML es Dir2PHTML.xsl y la hoja de estilo de texto, Dir2PlainText.xsl.

File

Salida derivada

NombreExplicaciónTipo de datos
output_layer

La capa de análisis de red actualizada con rutas.

Network Analyst Layer

Muestra de código

Ejemplo 1 de Indicaciones (ventana de Python)

El siguiente ejemplo de código muestra el uso de la función Directions con todos los parámetros:

arcpy.na.Directions("Route", "TEXT", "C:/Data/Route_Directions.txt", "Miles",
                    "REPORT_TIME", "Minutes")
Ejemplo 2 de Indicaciones (flujo de trabajo)

El siguiente script de Python independiente muestra el uso de la función Directions para generar indicaciones de conducción en un archivo HTML para una ruta.

# 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:
    #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"
    impedance = "TravelTime"
    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.MakeRouteLayer(network, layer_name, impedance,
                                         "FIND_BEST_ORDER", "PRESERVE_FIRST",
                                         "", ['Meters'], "NO_UTURNS",
                                         start_date_time="8 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, "",
                            "", exclude_restricted_elements = "EXCLUDE")

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