X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FNavaids%2Ftestnavs.cxx;h=920249a3aa82dc80855f0c390857eeb00d2dd6a6;hb=ecccc910645d6e8c131de86da28ec5d3d82ac190;hp=f988f53125e97042ad6520cacfd9507257b3e3bd;hpb=ce86c8322288976bd7bddead6ac2f99665590485;p=flightgear.git diff --git a/src/Navaids/testnavs.cxx b/src/Navaids/testnavs.cxx index f988f5312..920249a3a 100644 --- a/src/Navaids/testnavs.cxx +++ b/src/Navaids/testnavs.cxx @@ -1,22 +1,53 @@ -#include +#include -#include "navaids.hxx" +#include "fixlist.hxx" +#include "ilslist.hxx" +#include "navlist.hxx" int main() { - FGNavaids navs; - - FGPath p( "/export/data2/curt/FlightGear/Navaids/default.nav" ); - - navs.init( p ); - - FGNavaid n; double heading, dist; - if ( navs.query( -93.2, 45.14, 3000, 117.30, - &n, &heading, &dist) ) { - cout << "Found a station in range" << endl; + + current_navlist = new FGNavList; + SGPath p_nav( "/home/curt/FlightGear/Navaids/default.nav" ); + current_navlist->init( p_nav ); + FGNav n; + if ( current_navlist->query( -93.2 * SG_DEGREES_TO_RADIANS, + 45.14 * SG_DEGREES_TO_RADIANS, + 3000, 117.30, &n) ) + { + cout << "Found a vor station in range" << endl; cout << " id = " << n.get_ident() << endl; + } else { + cout << "not picking up vor. :-(" << endl; + } + + current_ilslist = new FGILSList; + SGPath p_ils( "/home/curt/FlightGear/Navaids/default.ils" ); + current_ilslist->init( p_ils ); + FGILS i; + if ( current_ilslist->query( -93.1 * SG_DEGREES_TO_RADIANS, + 45.24 * SG_DEGREES_TO_RADIANS, + 3000, 110.30, &i) ) + { + cout << "Found an ils station in range" << endl; + cout << " apt = " << i.get_aptcode() << endl; + cout << " rwy = " << i.get_rwyno() << endl; + } else { + cout << "not picking up ils. :-(" << endl; + } + + current_fixlist = new FGFixList; + SGPath p_fix( "/home/curt/FlightGear/Navaids/default.fix" ); + current_fixlist->init( p_fix ); + FGFix fix; + if ( current_fixlist->query( "SHELL", -82 * SG_DEGREES_TO_RADIANS, + 41 * SG_DEGREES_TO_RADIANS, 3000, + &fix, &heading, &dist) ) + { + cout << "Found a matching fix" << endl; + cout << " id = " << fix.get_ident() << endl; cout << " heading = " << heading << " dist = " << dist << endl; } else { - cout << "not picking anything up. :-(" << endl; + cout << "did not find fix. :-(" << endl; } }