const char sintable[] ={
0,9,18,27,35,44,53,62,
70,79,87,96,104,112,120,127,
135,143,150,157,164,171,177,183,
190,195,201,206,211,216,221,225,
229,233,236,240,243,245,247,249,
251,253,254,254,255,255};
double mycos(double deg)
{
return mysin(90-deg);
}
double mysin(double deg)
{
signed int quad;
int esti, diff;
while(deg>360)
deg-=360;
while(deg<0)
deg+=360;
if(deg>180)
{
quad= -1;
deg-=180;
}
else
quad = 1;
if(deg>90) deg = 180-deg;
deg/=2;
diff = (int)deg;
deg = deg - diff;
esti = sintable[diff];
diff = sintable[diff+1] - esti;
deg *= diff;
deg += esti;
return (deg/255)*quad;
}