SysTutorials

Linux Manual Pages › Section 3

fixatan2(3)

NAME

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

SYNOPSIS

#include <allegro.h>

fixed fixatan2(fixed y, fixed x);

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);

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(3), exspline(3)

Index