14,7 → 14,7 |
Winkelfunktionen sin, cos und arctan in |
brute-force Art: Sehr Schnell, nicht sonderlich genau, aber ausreichend |
Sinus Funktion von Nick666 vereinfacht |
Stand 30.9.2007 |
Stand 1.10.2007 |
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
*/ |
#include "main.h" |
21,10 → 21,10 |
|
|
// arctan Funktion: Eingabewert x,y Rueckgabe =arctan(x,y) in grad |
int arctan_i(long signed int x, long signed int y) |
int arctan_i( signed int x, signed int y) |
{ |
short int change_xy = 0; |
long signed int i; |
signed int i; |
long signed int wert; |
int return_value; |
|
44,15 → 44,15 |
|
if (wert <=268) //0...0.0,268 entsprechend 0..15 Grad |
{ |
return_value = (int)((wert*100)/(268-0)*(15-0)/100) +0; |
return_value = (signed int)((wert*100)/(268-0)*(15-0)/100) +0; |
} |
else if (wert <=578) //0,268...0.0,568 entsprechend 15..30 Grad |
{ |
return_value = (int)((((wert-268)*100)/(578-268)*(30-15))/100) +15; |
return_value = (signed int)((((wert-268)*100)/(578-268)*(30-15))/100) +15; |
} |
else //0,568...1 entsprechend 30..45 Grad |
{ |
return_value = (int)((((wert-578)*50)/(1000-578)*(45-30))/50) +30; |
return_value = (signed int)((((wert-578)*50)/(1000-578)*(45-30))/50) +30; |
} |
|
if (change_xy == 0) return_value = 90-return_value; //Quadrant 45..90 Grad |