Euclidean Direction (Spatial Analyst)
Summary
Calculates, for each cell, the direction, in degrees, to the nearest source.
Illustration
Usage
-
The input source data can be a feature class or raster.
-
The output values are based on compass directions (90 to the east, 180 to the south, 270 to the west, and 360 to the north), with 0 reserved for the source cells.
-
When the input source data is a raster, the set of source cells consists of all cells in the source raster that have valid values. Cells that have NoData values are not included in the source set. The value 0 is considered a legitimate source. A source raster can be easily created using the extraction tools.
-
When the input source data is a feature class, the source locations are converted internally to a raster before performing the Euclidean analysis. The resolution of the raster can be controlled with the Output cell size parameter.
-
The Maximum distance is specified in the same map units as the input source data.
-
Allocation is not an available output because there can be no floating-point information in the source data. If allocation output is desired, use Euclidean Allocation, which can generate all three outputs (allocation, distance, and direction) at the same time.
-
If a Mask has been set in the environment and the cells to be masked will mask a source, the Euclidean calculations will occur on the remaining source cells. The source cells that are masked will not be considered in the computations. These cell locations will be assigned NoData on the output rasters.
-
The NoData values created by the masked cells are ignored in the calculations on non-source cell locations. The Euclidean distance for cells behind NoData values is calculated as if the NoData value is not present. Any cell location that is assigned NoData because of the mask on the input surface will receive NoData on all the output rasters.
Syntax
Parameter | Explanation | Data Type |
in_source_data |
The input source locations. This is a raster or feature dataset that identifies the cells or locations to which the Euclidean distance for every output cell location is calculated. For rasters, the input type can be integer or floating point. | Raster Layer | Feature Layer |
maximum_distance (Optional) | Defines the threshold that the accumulative distance values cannot exceed. If an accumulative Euclidean distance value exceeds this value, the output value for the cell location will be NoData. The default distance is to the edge of the output raster. | Double |
cell_size (Optional) | The cell size at which the output raster will be created. This will be the value in the environment if it is explicitly set. If it is not set in the environment, the default cell size will depend on if the input source data is a raster or a feature, as follows:
| Analysis Cell Size |
out_distance_raster (Optional) | The output Euclidean distance raster. The distance raster identifies, for each cell, the Euclidean distance to the closest source cell, set of source cells, or source location. The output raster is of floating point type. | Raster Dataset |
Return Value
Name | Explanation | Data Type |
out_direction_raster | The output Euclidean direction raster. The direction raster contains the calculated direction, in degrees, each cell center is from the closest source cell center. The range of values is from 0 degrees to 360 degrees, with 0 reserved for the source cells. Due east (right) is 90, and the values increase clockwise (180 is south, 270 is west, and 360 is north). The output raster is of integer type. | Raster |
Code Sample
The following Python Window script demonstrates how to use the EuclideanDirection tool.
import arcpy from arcpy import env from arcpy.sa import * env.workspace = "C:/sapyexamples/data" outEucDirect = EucDirection("observers", 35000, 50, "c:/sapyexamples/output/optoutdist") outEucDirect.save("c:/sapyexamples/output/eucoutdir")
Calculates the direction in degrees that each cell center is from the cell center of the closest source.
# Name: EucDirection_Ex_02.py # Description: Calculates the direction in degrees that each # cell center is from the cell center of the # closest source. # Requirements: Spatial Analyst Extension # Author: ESRI # Import system modules import arcpy from arcpy import env from arcpy.sa import * # Set environment settings env.workspace = "C:/sapyexamples/data" # Set local variables inSource = "observers.shp" maxDist = 35000 cellSize = 50 optOutDistance = "c:/sapyexamples/output/optdistout" # Check out the ArcGIS Spatial Analyst extension license arcpy.CheckOutExtension("Spatial") # Execute EucDirections outEucDirect = EucDirection(inSource, maxDist, cellSize, optOutDistance) # Save the output outEucDirect.save("c:/sapyexamples/output/eucoutdir02")