Possible Duplicate:
what is the difference between atan and atan2 in c++ ?
Why is −π < atan2(y, x) ≤ π while for lines we really need only from 0 to π and what has api like atan2 but would return from 0 to pi?
Possible Duplicate:
what is the difference between atan and atan2 in c++ ?
Why is −π < atan2(y, x) ≤ π while for lines we really need only from 0 to π and what has api like atan2 but would return from 0 to pi?
atan2 returns all possible angles because it's not used just for drawing lines! It's used for actual maths as well, where the difference is important. atan, on the other hand, produces results in [-pi/2, +pi/2].
One common application of atan2 is converting from cartesian coordinates to polar coordinates. And that it supports all angles is its reason of existance. Else you could just use atan(y/x).