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.
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 CELL_CENTER. 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.
Forzar convención de dirección del flujo para ráster de vínculo es un parámetro nuevo que fuerza que el Ráster de vínculo de coste de entrada se trate como un ráster de dirección del flujo cuando se activa. Para acceder a este parámetro, debe descargar e instalar el Parche para ArcGIS (Desktop, Engine, Server) 10.7.1 Spatial Analyst desde la página Descargas del Soporte técnico de Esri.
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ámetro | Explicación | Tipo 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.
| 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.
| 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", "costraster", "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"
inCostRaster = "costraster"
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, inCostRaster, inBacklink,
outCostPathFeat, method, destField)
Entornos
- Auto ejecución
- Espacio de trabajo actual
- Valor Z de salida predeterminado
- Resolución M
- Tolerancia M
- Mantener el índice espacial
- Palabra clave CONFIG de salida
- La salida tiene valores M
- La salida tiene valores Z
- Dominio M de salida
- Dominio XY de salida
- Dominio Z de salida
- Espacio de trabajo temporal
- Resolución XY
- Tolerancia XY
- Resolución Z
- Tolerancia Z
Información sobre licencias
- Basic: Requiere Spatial Analyst
- Standard: Requiere Spatial Analyst
- Advanced: Requiere Spatial Analyst