logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

fixatan2 - Fixed point version of the libc atan2() routine. Allegro game programming library.

Description

       This  is  a  fixed point version of the libc atan2() routine. It computes the arc tangent of `y / x', but
       the signs of both arguments are used to determine the quadrant of the result, and `x' is permitted to  be
       zero. This function is useful to convert Cartesian coordinates to polar coordinates.  Example:

          fixed result;

          /* Sets `result' to binary angle 64. */
          result = fixatan2(itofix(1), 0);
          /* Sets `result' to binary angle -109. */
          result = fixatan2(itofix(-1), itofix(-2));
          /* Fails the assert. */
          result = fixatan2(0, 0);
          ASSERT(!errno);

Name

       fixatan2 - Fixed point version of the libc atan2() routine. Allegro game programming library.

Return Value

       Returns  the arc tangent of `y / x' in fixed point binary format angle, from `-128' to `128'. If both `x'
       and `y' are zero, returns zero and sets `errno' to EDOM.

See Also

       , exlights(3alleg4), exspline(3alleg4)

Allegro                                           version 4.4.3                                fixatan2(3alleg4)

Synopsis

#include<allegro.h>fixedfixatan2(fixedy,fixedx);

See Also