Skip To Content

Determine Travel Cost Path As Polyline

Summary

Calculates the least cost polyline path between sources and destinations.

Illustration

Determine Travel Cost Path as Polyline tool illustration

Usage

  • The Determine Travel Cost Path As Polyline tool produces an output feature of least-cost paths from sources to destinations.

  • When the source or the destination input is an image service, cells that are not sources or destinations must have the value NoData. Any cells in either of these inputs that have a value, including zero, will be used as valid sources or destinations.

  • The input cost surface cannot have any zero values or negative values.

Syntax

DetermineTravelCostPathAsPolyline_ra (inputSourceRasterOrFeatures, inputCostRaster, inputDestinationRasterOrFeatures, outputPolylineName, {pathType})
ParameterExplanationData Type
inputSourceRasterOrFeatures

An image service or feature service that identifies the cells from which the least-cost path is determined to the destinations.

If the input is an image service, the input consists of cells that have valid values (zero is a valid value), and the remaining cells must be assigned NoData.

Raster Layer; Image Service; Feature Layer; String
inputCostRaster

The name of a cost raster image service to be used to determine the least-cost path from the sources to the destinations.

The value at each cell location represents the cost-per-unit distance for moving through the cell. Each cell location value is multiplied by the cell resolution while also compensating for diagonal movement to obtain the total cost of passing through the cell.

The values of the cost raster can be integer or floating point, but they cannot be negative or zero (you cannot have a negative or zero cost).

Raster Layer; Image Service; String
inputDestinationRasterOrFeatures

An image service or feature service that identifies the cells to which the least-cost path is calculated.

Raster Layer; Image Service; Feature Layer; String
outputPolylineName

The name of the output polyline feature service.

The polyline feature service of the optimum (least-cost) paths connecting sources and destinations.

Each path (or line) is uniquely numbered, and has an additional field in the attribute table called DestID, which connects it back to the unique identifier on the destination raster.

Since each path is represented by a unique line, there can be multiple lines in locations where paths travel the same route.

String
pathType
(Optional)

Defines the manner in which the values and zones on the input destination data will be interpreted in the cost path calculations.

  • EACH_CELLFor each cell or location with valid values on the input destination data, a least-cost path is determined and saved on the output. With this option, each cell or location of the input destination data is treated separately, and a least-cost path is determined for each from cell.
  • EACH_ZONEFor each zone on the input destination data, a least-cost path is determined and saved to the output. With this option, the least-cost path for each zone begins at the location with the lowest cost distance weighting in the zone.
  • BEST_SINGLEFor all locations on the input destination data, the least-cost path is derived from the location with the minimum of the least-cost paths to source locations. This is the default.
String

Code sample

DetermineTravelCostPathAsPolyline example 1 (Python window)

This example calculates the travel cost to destinations.

import arcpy

arcpy.DetermineTravelCostPathAsPolyline_ra(
    "https://myserver/rest/services/sources/ImageServer", 
    "https://myserver/rest/services/costsurface/ImageServer", 
    "https://myserver/rest/services/destination/ImageServer", 
    "outpath", "BEST_SINGLE")
DetermineTravelCostPathAsPolyline example 2 (stand-alone script)

This example calculates the travel cost to destinations.

#-------------------------------------------------------------------------------
# Name: DetermineTravelCostPathAsPolyline_Ex_02.py
# Description: Calculates the optimum travel cost path.
# Requirements: ArcGIS Image Server

# Import system modules
import arcpy

# Set local variables
inputSourceLayer =
    'https://MyPortal.esri.com/server/rest/services/Hosted/sources/ImageServer'
inputCostLayer =
    'https://MyPortal.esri.com/server/rest/services/Hosted/costraster/ImageServer'
inputDestinationLayer = 
    'https://MyPortal.esri.com/server/rest/services/Hosted/destinationras/ImageServer'
outputName = 'outTravelPaths'
pathType = 'BEST_SINGLE'

arcpy.DetermineTravelCostPathAsPolyline_ra(inputSourceLayer, inputCostLayer,
                                           inputDestinationLayer, outputName, pathType)

Licensing information

  • ArcGIS Desktop Basic: Requires ArcGIS Image Server
  • ArcGIS Desktop Standard: Requires ArcGIS Image Server
  • ArcGIS Desktop Advanced: Requires ArcGIS Image Server

Related topics