Returns the inverse tangent (the arctangent) for specified x and y coordinates.
ATAN2(x_coord; y_coord)
x_coord is the value of the x coordinate.y_coord is the value of the y coordinate.ATAN2 returns the inverse trigonometric tangent, that is, the angle (in radians) between the x-axis and a line from point x_coord, y_coord to the origin. The angle returned is between -PI and PI.To return the angle in degrees, use the DEGREES function.
ATAN2(20; 20)
returns 0.785398163397448 (PI/4 radians).
DEGREES(ATAN2(12.3; 12.3))
returns 45. The tangent of 45 degrees is 1.
Spaceship Targeting System
Imagine you are developing a 2D space shooter game. The player controls a spaceship at a certain coordinate (xplayer,yplayer), and there's an enemy ship at a coordinate (xenemy,yenemy). To fire a weapon at the enemy, the player's spaceship needs to be rotated to point directly at the enemy's location. The angle of rotation can be calculated using the ATAN2 function.
Problem: Find the angle (in radians) that the player's spaceship needs to rotate to face the enemy ship.
Given:
Solution:
The first step is to find the relative position of the enemy with respect to the player. This can be done by treating the player's position as the origin (0,0).
These values, Δx and Δy, represent the horizontal and vertical distances from the player to the enemy. The angle can then be calculated using ATAN2($\Delta y, \Delta x$).
Let's walk through a few scenarios:
Scenario | Player Position (xplayer,yplayer) | Enemy Position (xenemy,yenemy) | Δx=xenemy−xplayer | Δy=yenemy−yplayer | Angle (radians) = ATAN2($\Delta y, \Delta x$) | ||
|---|---|---|---|---|---|---|---|
A | B | C | D | E | F | ||
1 | 1 | (10, 20) | (30, 40) | 20 | 20 | ATAN2(20, 20) = π/4 (or 45°) | |
2 | 2 | (10, 20) | (-10, 40) | -20 | 20 | ATAN2(20, -20) = 3π/4 (or 135°) | |
3 | 3 | (10, 20) | (-10, 0) | -20 | -20 | ATAN2(-20, -20) = −3π/4 (or −135°) | |
4 | 4 | (10, 20) | (30, 0) | 20 | -20 | ATAN2(-20, 20) = −π/4 (or −45°) |
As shown in the table, ATAN2 correctly returns the angle for each quadrant, which is essential for a game's targeting system. The standard ATAN function would have resulted in the same positive angle (π/4) for all four scenarios, requiring additional logic to determine the correct quadrant based on the signs of Δx and Δy. ATAN2 handles this automatically, simplifying the code and preventing bugs. The calculated angle can then be used by the game's rendering engine to rotate the spaceship's sprite to the correct orientation.
PRODUCT & FEATURES
RESOURCES
Terms | Privacy | Spam Policy
© 2026 Zapof