Fixed point version of the libc atan2() routine.


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);
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:
Examples using this:

Related Discussions

The following threads each have code containing this keyword: Note: You can click on the numbers to jump directly to the posts that reference this page.

Related Projects

The following projects include source code containing this keyword: