57 if (x >= 1.0F)
return 90.0F;
58 if (x <= -1.0F)
return -90.0F;
62 return (
fatan_deg(x / sqrtf(1.0F - x * x)));
72 if (x >= 1.0F)
return 0.0F;
73 if (x <= -1.0F)
return 180.0F;
77 if (x == 0.0F)
return 90.0F;
78 if (x > 0.0F)
return fatan_deg((sqrtf(1.0F - x * x) / x));
79 return 180.0F +
fatan_deg((sqrtf(1.0F - x * x) / x));
91 #define TAN15DEG 0.26794919243F // tan(15 deg) = 2 - sqrt(3) 92 #define TAN30DEG 0.57735026919F // tan(30 deg) = 1/sqrt(3) 94 ixisnegative = ixexceeds1 = ixmapped = 0;
125 if (ixmapped) fangledeg += 30.0F;
126 if (ixexceeds1) fangledeg = 90.0F - fangledeg;
127 if (ixisnegative) fangledeg = -fangledeg;
141 if (y > 0.0F)
return 90.0F;
144 if (y < 0.0F)
return -90.0F;
155 if ((x < 0.0F) && (y > 0.0F))
return (180.0F +
fatan_deg(y / x));
168 #define PADE_A 96.644395816F // theoretical Pade[3/2] value is 5/3*180/PI=95.49296 169 #define PADE_B 25.086941612F // theoretical Pade[3/2] value is 4/9*180/PI=25.46479 170 #define PADE_C 1.6867633134F // theoretical Pade[3/2] value is 5/3=1.66667
float fatan_15deg(float x)
Math approximations file.
float fatan2_deg(float y, float x)