Flow Length (Spatial Analyst)
Summary
Calculates the upstream or downstream distance, or weighted distance, along the flow path for each cell.
Usage
- 
The value type for the Flow Length output raster is floating point. 
- A primary use of the Flow Length tool is to calculate the length of the longest flow path within a given basin. This measure is often used to calculate the time of concentration of a basin. This would be done using the UPSTREAM option. - The tool can also be used to create distance-area diagrams of hypothetical rainfall and runoff events using the weight raster as an impedance to movement downslope. 
Syntax
| Parameter | Explanation | Data Type | 
| in_flow_direction_raster | The input raster that shows the direction of flow out of each cell. The flow direction raster can be created using the Flow Direction tool. | Raster Layer | 
| direction_measurement (Optional) | The direction of measurement along the flow path. 
 | String | 
| in_weight_raster (Optional) | An optional input raster for applying a weight to each cell. If no weight raster is specified, a default weight of 1 will be applied to each cell. For each cell in the output raster, the result will be the number of cells that flow into it. | Raster Layer | 
Return Value
| Name | Explanation | Data Type | 
| out_raster | The output raster that shows for each cell the upstream or downstream distance along a flow path. | Raster | 
Code Sample
This example Calculates the downstream distance along the flow path for each cell.
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outFlowLength = FlowLength("flowdir", "DOWNSTREAM", "")
outFlowLength.save("c:/sapyexamples/output/outflowlen01")
This example Calculates the downstream distance along the flow path for each cell.
# Name: _Ex_02.py
# Description: 
# 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
inFlowDirectionRaster = "flowdir"
inWeightRaster = ""
directionType = "DOWNSTREAM"
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute 
outFlowLength = FlowLength(inFlowDirectionRaster, directionType, inWeightRaster)
# Save the output 
outFlowLength.save("c:/sapyexamples/output/outflowlen02.tif")