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