Available with Spatial Analyst license.
Available with Image Analyst license.
Summary
Calculates the inverse tangent (based on x,y) of cells in a raster.
Illustration
Usage
ATan2 converts rectangular coordinates (x,y) to polar (r,θ), where r is the distance from the origin and θ is the angle from the x-axis.
The equation for determining ATan2 is: tanθ = y / x (where θ is the angle).
The ATan2 operation represents all quadrants in a Cartesian matrix (based on sign).
The values of the first specified input are used as the numerator in the calculation of the tangent angle (y). The values of the second specified input are used as the denominator in the calculation of the angle (x).
In mathematics, all trigonometric functions have a defined range of valid input values, called the domain. The output values from each function also has a defined range. For this tool
The Domain is : -∞ < [in_value] < ∞
This domain applies to both inputs.
The Range is : -pi < [out_value] ≤ pi
Note that -∞ and ∞ represent the smallest negative and largest positive value supported by the particular raster format, respectively.
If both input values are 0, the output will be NoData.
If first input value is 0, the output will be 0.
The input values to ATan2 are interpreted as being in linear units, and to give meaningful results, they should both be in the same unit.
Output values are always floating point, regardless of the input data type.
The output values from this tool are in radians. To use degrees instead, the resulting raster must be multiplied by the radians-to-degrees conversion factor of 180/pi, or approximately 57.296.
For further assistance, a procedure to follow and examples of converting output in radians to degrees are available.
If both inputs are single band rasters, or one of the inputs is a constant, the output will be a single band raster.
If both inputs are multiband rasters, or one of the inputs is a constant, the output will be a multiband raster. The number of bands in each multiband input must be the same.
The tool will perform the operation on each band from one input against the corresponding band from the other input. If one of the inputs is a multiband raster and the other input is a constant, the tool will perform the operation against the constant value for each band in the multiband input.
See Analysis environments and Spatial Analyst for additional details on the geoprocessing environments that apply to this tool.
Syntax
ATan2(in_raster_or_constant1, in_raster_or_constant2)
Parameter | Explanation | Data Type |
in_raster_or_constant1 | The input that specifies the numerator, or y value, to use when calculating the inverse tangent. A number can be used as an input for this parameter, provided a raster is specified for the other parameter. To specify a number for both inputs, the cell size and extent must first be set in the environment. | Raster Layer; Constant |
in_raster_or_constant2 | The input that specifies the denominator, or x value, to use when calculating the inverse tangent. A number can be used as an input for this parameter, provided a raster is specified for the other parameter. To specify a number for both inputs, the cell size and extent must first be set in the environment. | Raster Layer; Constant |
Return Value
Name | Explanation | Data Type |
out_raster | The output raster. The values are the inverse tangent angle of the input values. | Raster |
Code sample
This example calculates the inverse tangent for two input Grid rasters.
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outATan2 = ATan2("degs", "negs")
outATan2.save("C:/sapyexamples/output/outatan2")
This example calculates the inverse tangent for two input Grid rasters.
# Name: ATan2_Ex_02.py
# Description: Calculates the inverse tangent of cells based
# on (y, x) values from two rasters
# 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
inRaster1 = "degs"
inRaster2 = "negs"
# Execute ATan2
outATan2 = ATan2(inRaster1, inRaster2)
# Save the output
outATan2.save("C:/sapyexamples/output/outatan2.tif")
Environments
Licensing information
- Basic: Requires Spatial Analyst or Image Analyst
- Standard: Requires Spatial Analyst or Image Analyst
- Advanced: Requires Spatial Analyst or Image Analyst