.\" Automatically generated by Pandoc 3.6.1 .\" .TH "al_fixatan2" "3" "" "Allegro reference manual" .SH NAME al_fixatan2 \- Allegro 5 API .SH SYNOPSIS .IP .EX #include \f[B]\f[R] al_fixed al_fixatan2(al_fixed y, al_fixed x) .EE .SH DESCRIPTION This is a fixed point version of the libc atan2() routine. It computes the arc tangent of \f[CR]y / x\f[R], but the signs of both arguments are used to determine the quadrant of the result, and \f[CR]x\f[R] is permitted to be zero. This function is useful to convert Cartesian coordinates to polar coordinates. .PP Example: .IP .EX al_fixed result; \f[I]/* Sets \[ga]result\[aq] to binary angle 64. */\f[R] result = al_fixatan2(al_itofix(1), 0); \f[I]/* Sets \[ga]result\[aq] to binary angle \-109. */\f[R] result = al_fixatan2(al_itofix(\-1), al_itofix(\-2)); \f[I]/* Fails the assert. */\f[R] result = al_fixatan2(0, 0); assert(!al_get_errno()); .EE .SH RETURN VALUE Returns the arc tangent of \f[CR]y / x\f[R] in fixed point binary format angle, from \-128 to 128. If both \f[CR]x\f[R] and \f[CR]y\f[R] are zero, returns zero and sets Allegro\[cq]s errno to EDOM.