From 2da219ef5e2e977d60c292e185764a71b9d71765 Mon Sep 17 00:00:00 2001 From: david Date: Thu, 17 Jul 2003 00:26:38 +0000 Subject: [PATCH] Update magvar model before using it to initialize compass error. --- src/Main/main.cxx | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/Main/main.cxx b/src/Main/main.cxx index 2a8063655..7299f0eed 100644 --- a/src/Main/main.cxx +++ b/src/Main/main.cxx @@ -1778,8 +1778,16 @@ static bool fgMainInit( int argc, char **argv ) { // kludge to initialize mag compass // (should only be done for in-flight // startup) - fgSetDouble("/instrumentation/heading-indicator/offset-deg", - globals->get_mag()->get_magvar() * SGD_RADIANS_TO_DEGREES); + // update magvar model + globals->get_mag()->update( fgGetDouble("/position/longitude-deg") + * SGD_DEGREES_TO_RADIANS, + fgGetDouble("/position/latitude-deg") + * SGD_DEGREES_TO_RADIANS, + fgGetDouble("/position/altitude-ft") + * SG_FEET_TO_METER, + globals->get_time_params()->getJD() ); + double var = globals->get_mag()->get_magvar() * SGD_RADIANS_TO_DEGREES; + fgSetDouble("/instrumentation/heading-indicator/offset-deg", -var); // airport = new ssgBranch; // airport->setName( "Airport Lighting" );