From 27c58ddb217151af31b1a096b0dfaa841be85731 Mon Sep 17 00:00:00 2001 From: James Turner Date: Tue, 4 Feb 2014 14:54:39 +0000 Subject: [PATCH] Tacan: avoid a 'long-range' wgs84_inverse - Only check mobile distance at all, if the mobile is valid --- src/Instrumentation/tacan.cxx | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/Instrumentation/tacan.cxx b/src/Instrumentation/tacan.cxx index 07c2d617b..8b3fff699 100644 --- a/src/Instrumentation/tacan.cxx +++ b/src/Instrumentation/tacan.cxx @@ -138,7 +138,7 @@ TACAN::update (double delta_time_sec) return; } - SGGeod pos(globals->get_aircraft_position()); + SGGeod pos(globals->get_aircraft_position()); // On timeout, scan again _time_before_search_sec -= delta_time_sec; if ((_time_before_search_sec < 0 || _new_frequency) && _frequency_mhz >= 0) @@ -150,10 +150,10 @@ TACAN::update (double delta_time_sec) double mobile_az2 = 0; double mobile_bearing = 0; double mobile_distance = 0; - - geo_inverse_wgs_84(pos, _mobilePos, + if (_mobile_valid) { + geo_inverse_wgs_84(pos, _mobilePos, &mobile_bearing, &mobile_az2, &mobile_distance); - + } //calculate the bearing and range of the station from the aircraft double az2 = 0; -- 2.39.5