/************************************************************************** trig_tables.cc programmer: Floyd Henning purpose: To initialize the trig tables. **************************************************************************/ #include #include "trig_tables.h" #include "pi.h" trig_tables table; trig_tables::trig_tables() { int i,j; for (i=0;i<41;i++) for (j=0;j<41;j++) { if ((j == 20) && (i == 20)) atanarray[i][j] = 0.0; else atanarray[i][j]=atan2((float)(i-20),(float)(j-20)); } for (i=0;i<7001;i++) sqrtarray[i] = sqrt((float)i); for (i=0;i<361;i++) { sinarray[i] = sin((float)i*DEG2RAD); cosarray[i] = cos((float)i*DEG2RAD); } } float trig_tables::atan_table(int y, int x) { return(atanarray[y+20][x+20]); } float trig_tables::sqrt_table(int x) { return(sqrtarray[x]); } float trig_tables::sin_table(int x) { return(sinarray[x]); } float trig_tables::cos_table(int x) { return(cosarray[x]); }