]> git.mxchange.org Git - flightgear.git/commitdiff
#793 - invalid data on final FP leg.
authorJames Turner <zakalawe@mac.com>
Thu, 27 Sep 2012 08:27:48 +0000 (09:27 +0100)
committerJames Turner <zakalawe@mac.com>
Thu, 27 Sep 2012 08:27:48 +0000 (09:27 +0100)
The Flight-plan leg data computation was omitting certain data for the final waypoint, which in turn made some of the route-manager data bogus when flying the final leg. Fill in some sensible values which we can compute.

src/Navaids/FlightPlan.cxx

index 5f0c84eab6227ef61701c53ed4def190ac1f0549..fd7f7fb1d20e4464d695aedd80613833db1c997c 100644 (file)
@@ -1018,6 +1018,15 @@ void FlightPlan::rebuildLegData()
     _legs[l]->_distanceAlongPath = _totalDistance;
     _totalDistance += crsDist.second * SG_METER_TO_NM;
   } // of legs iteration
+  
+// set some data on the final leg
+  if (lastLeg > 0) {
+    // keep the same course as the final leg, when passing the final
+    // waypoint
+    _legs[lastLeg]->_courseDeg = _legs[lastLeg - 1]->_courseDeg;
+    _legs[lastLeg]->_pathDistance = 0.0;
+    _legs[lastLeg]->_distanceAlongPath = _totalDistance;
+  }
 }
   
 void FlightPlan::lockDelegate()