Ruta de coste como polilínea (Spatial Analyst)

Disponible con una licencia de Spatial Analyst.

Resumen

Calcula la ruta de menor coste desde un origen a su destino como una entidad de línea.

Más información sobre la creación de la ruta de menor coste

Uso

  • La herramienta Ruta de coste como polilínea produce una entidad de polilínea de salida que registra la ruta o las rutas de menor coste desde orígenes hasta el destino más cercano, definido dentro de la superficie de coste acumulativo, en términos de coste-distancia.

  • En general, se requiere la ejecución de una o varias de las herramientas de coste ponderado (Coste-distancia, Vínculo de menor coste o Asignación de costes) antes de ejecutar Ruta de coste como polilínea para crear los rásteres de vínculo y de coste-distancia de entrada. Son rásteres de entrada obligatorios para Ruta de coste como polilínea.

  • Cuando los datos de destino de entrada son un ráster, el conjunto de celdas de destino consta de todas las celdas de Ráster o datos de destino de entidad de entrada que tengan valores válidos. Las celdas con valores NoData no se incluyen en el conjunto de origen. El valor cero se considera un destino legítimo. Se puede crear un ráster de destino con las herramientas de extracción.

  • Cuando la entrada de la fuente es una entidad, se utilizará el primer campo disponible válido de forma predeterminada. Si no existen campos válidos, se utilizará el campo ObjectID (por ejemplo, OID o FID, dependiendo del tipo de entrada de entidad).

  • Al utilizar datos de entidad poligonal para los destinos de entidad de entrada, se debe tener cuidado con la manera en que se gestiona el tamaño de celda de salida, especialmente cuando es grueso en relación con los detalles presentes en la entrada. Se aplica un proceso de rasterización interno que utiliza la herramienta De polígono a ráster, con un valor predeterminado de Tipo de asignación de celdas de Centro de celda. Significa que los datos no ubicados en el centro de la celda no se incluirán en la salida de destino rasterizada intermedia y no se representarán en los cálculos de distancia. Por ejemplo, si sus destinos son una serie de polígonos pequeños, como huellas de edificios, que son pequeñas en relación con el tamaño de celda de salida, es posible que solo algunos de ellos caigan debajo de los centros de las celdas ráster de salida, ocasionando aparentemente que muchos otros se pierdan en el análisis.

    Para evitar esta situación, como paso intermedio, podría rasterizar las entidades de entrada directamente con la herramienta De entidad a ráster y establecer el parámetro Campo. A continuación, utilice la salida resultante como entrada de la herramienta de distancia que desee usar. Alternativamente, puede seleccionar un tamaño de celda pequeño para capturar la cantidad adecuada de detalle de las entidades de entrada.

  • La entidad de polilínea de salida tiene un campo denominado DestID que identifica el destino al que se dirige cada línea. Si la salida se escribe en una geodatabase de archivos, hay un campo denominado shape_length que contiene la longitud total de la ruta de menor coste.

  • La herramienta Ruta de coste como polilínea ignorará la configuración del entorno de Tamaño de celda y utilizará el tamaño de celda del Ráster de vínculo de menor coste de entrada para el ráster de salida. El patrón del ráster de vínculo se verá seriamente alterado si se remuestrea con una resolución diferente. Para evitar confusiones, no debe configurar el tamaño de celda cuando usa esta herramienta.

  • Ruta de coste como polilínea se puede utilizar para determinar la ruta de flujo basada en la dirección del flujo D8. Para utilizar Ruta de coste como polilínea de dicha forma, utilice el ráster de dirección del flujo D8 como entrada para el Ráster de vínculo de menor coste de entrada. También deberá proporcionar un Ráster de coste-distancia de entrada; el Ráster de coste-distancia de entrada no se utiliza para determinar la ruta. Tanto si utiliza un ráster constante como un modelo digital de elevación (DEM), su ruta será la misma; solo variará en su ruta un valor de atributo. Consulte la herramienta Dirección del flujo para obtener más información sobre los rásteres de dirección del flujo D8.

  • Ruta de coste como polilínea se puede utilizar para determinar una ruta alrededor de barreras basada en el Ráster de dirección hacia atrás de salida generado con las herramientas euclidianas. Para usar Ruta de coste como polilínea de este modo, ejecute primero cualquiera de las herramientas euclidianas con Datos de barrera de entidad o ráster de entrada definida para generar Ráster de distancia de salida y Ráster de dirección hacia atrás de salida. Utilice las salidas generadas con las herramientas euclidianas como entrada de Ruta de coste como polilínea.

  • Consulte Entornos de análisis y Spatial Analyst para obtener detalles adicionales sobre los entornos de geoprocesamiento que se aplican a esta herramienta.

Sintaxis

CostPathAsPolyline(in_destination_data, in_cost_distance_raster, in_cost_backlink_raster, out_polyline_features, {path_type}, {destination_field}, {force_flow_direction_convention})
ParámetroExplicaciónTipo de datos
in_destination_data

Un dataset de entidades o ráster que identifica aquellas celdas desde donde se determina la ruta de menor coste al origen menos costoso.

Si la entrada es un ráster, debe constar de celdas con valores válidos para los destinos, y se debe asignar NoData a las celdas restantes. Cero es un valor válido.

Raster Layer; Feature Layer
in_cost_distance_raster

El ráster de coste-distancia que se utiliza para determinar la ruta de menor coste desde los orígenes hasta los destinos.

En general, el ráster de coste-distancia se crea con las herramientas Coste-distancia, Asignación de costes o Vínculo de menor coste. El ráster de distancia de coste almacena, para cada celda, la distancia de coste acumulativo mínimo sobre una superficie de coste desde cada celda hasta un conjunto de celdas de origen.

Raster Layer
in_cost_backlink_raster

El ráster de vínculo de menor coste que se utilizará para determinar la ruta para volver a un origen mediante la ruta de menor coste, o la ruta más corta.

Para cada celda de un ráster de vínculo, dirección hacia atrás o dirección de flujo, el valor identifica al vecino que es la próxima celda en la ruta que va de esa celda hasta una celda de origen.

Raster Layer
out_polyline_features

Clase de entidad de salida que contendrá la ruta de menor coste.

Feature Class
path_type
(Opcional)

Especifica una palabra clave que define la manera en que se interpretarán los valores y las zonas de los datos de destino de entrada en los cálculos de la ruta de coste.

  • BEST_SINGLE Para todas las celdas en los datos de destino de entrada, la ruta de menor coste deriva de la celda con las rutas de menor coste mínimas a las celdas de origen.
  • EACH_ZONE Por cada zona en los datos de destino de entrada, se determina una ruta de menor coste y se guarda en el ráster de salida. Con esta opción, la ruta de menor coste de cada zona comienza en la celda con la ponderación de distancia de coste más baja de la zona.
  • EACH_CELL Por cada celda con valores válidos en los datos de destino de entrada, se determina una ruta de menor coste y se guarda en el ráster de salida. Con esta opción, cada celda de los datos de destino de entrada se trata de forma separada y se determina una ruta de menor coste para cada celda.
String
destination_field
(Opcional)

El campo que se utiliza para obtener valores para las ubicaciones de destino.

Los datos de entidad de entrada deben contener al menos un campo válido.

Field
force_flow_direction_convention
(Opcional)

Obliga a la herramienta a tratar el ráster de vínculo de entrada como un ráster de dirección del flujo. Los rásteres de dirección del flujo pueden tener un entero con valores de 0 a 255.

  • INPUT_RANGEEl in_cost_backlink_raster se interpretará de manera distinta en función del rango de valores y de si es entero o flotante. Para un rango de valores de 0 a 8, el in_cost_backlink_raster se tratará como ráster de vínculo. Para los valores de 0 a 255 y enteros, el in_cost_backlink_raster se tratará como ráster de dirección del flujo. Para un rango de valores de 0 a 360 y de punto flotante, el in_cost_backlink_raster se tratará como un ráster de dirección hacia atrás.
  • FLOW_DIRECTIONEl ráster suministrado para el in_cost_backlink_raster se tratará como ráster de dirección del flujo. Se necesita si el ráster de dirección del flujo tiene un valor máximo de 8.
Boolean

Muestra de código

Ejemplo 1 de CostPathAsPolyline (ventana de Python)

El siguiente script de la ventana de Python muestra cómo utilizar esta herramienta.

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
CostPathAsPolyline("observers", "costdistraster", "backlink2", "c:/sapyexamples/output/outcostpth01.shp")
Ejemplo 2 de CostPathAsPolyline (script independiente)

Calcula la ruta de menor coste desde un origen a su destino.

# Name: CostPathAsPolyline_Ex_02.py
# Description: Calculates the least-cost path from a source to 
#              a destination.
# Requirements: Spatial Analyst Extension

# Import system modules
import arcpy
from arcpy import env
from arcpy.sa import *

# Set environment settings
env.workspace = "C:/sapyexamples/data"

# Set local variables
inDestination = "observers.shp"
inCostDistRaster = "costdistraster"
inBacklink = "backlink2"
outCostPathFeat = "c:/sapyexamples/output.gdb/outcostpathfeat02"
method = "EACH_CELL"
destField = "FID"

# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")

# Execute
CostPathAsPolyline(inDestination, inCostDistRaster, inBacklink, 
                   outCostPathFeat, method, destField)

Información de licenciamiento

  • Basic: Requiere Spatial Analyst
  • Standard: Requiere Spatial Analyst
  • Advanced: Requiere Spatial Analyst

Temas relacionados