tcp_tick(&StopNavsock);
/*Convert degree based LAT/LONG to meters.*/
LATm = ((LATDEG* 60)+LATMIN)*1852;
LONGm = -((LONGDEG*60)+LONGMIN)*1852*cos (.628 );
// printf("longm = %f\n",LONGm);
// printf("latm = %f\n",LATm);
/*Convert Waypoint LAT/LONG to meters.*/
WPLATm = ((WPLATDEG*60)+WPLATMIN)*1852;
WPLONGm = -((WPLONGDEG*60)+WPLONGMIN)*1852*cos (.628);
// printf("wplongm = %f\n",WPLONGm);
// printf("wplatm = %f\n",WPLATm);
/*Determine hdg and dist to WP.*/
DIFFLONGm = WPLONGm - LONGm;
DIFFLATm = WPLATm - LATm;
// printf("difflongm = %f\n",DIFFLONGm);
// printf("difflatm = %f\n",DIFFLATm);
DIST = sqrt (DIFFLONGm*DIFFLONGm + DIFFLATm*DIFFLATm);
// printf("dist = %f\n",DIST);
//DIVIDE BY ZERO PREVENTION
if(DIFFLONGm == 0)
DIFFLONGm = 0.001;
if(DIFFLATm == 0)
DIFFLATm = 0.001;
//Conditional statements to determine heading depending upon quadrant
if(DIFFLONGm>=0 && DIFFLATm>=0)
{CTS = 180/pi * atan (DIFFLONGm/DIFFLATm);}
Komentarze do niniejszej Instrukcji