1 #include <stdio.h>
2 #include <math.h>
3 #include <float.h>
4 
5 extern double _pi;
6 extern double _halfpi;
7 
8 /*	arc tangent of y/x  */
atan2(y,x)9 double atan2(y,x)
10 double x, y ;
11 {
12 	double a;
13 
14 	if (fabs(x) >= fabs(y)) {
15 		a = atan(y/x) ;
16 		if (x < 0.0) {
17 			if (y >= 0.0) a += _pi ;
18 			else a -= _pi ;
19 		}
20 	}
21 	else {
22 		a = -atan(x/y) ;
23 		if (y < 0.0) a -= _halfpi ;
24 		else     a += _halfpi ;
25 	}
26 	return a ;
27 }
28