]> git.mxchange.org Git - flightgear.git/commitdiff
Two minor (codewise) fixes to ensure everything works as advertised:
authordurk <durk>
Sun, 30 Aug 2009 14:39:04 +0000 (14:39 +0000)
committerTim Moore <timoore@redhat.com>
Wed, 2 Sep 2009 22:02:48 +0000 (00:02 +0200)
 - Make sure to initialize the groundnetwork after succesful loading.
 - Ensure that the AI groundnetwork code proximity detection code used the
   correct values for bearing. (Note that detecting the proximity of the
   user aircraft appears still to be broken. I'll look into that later).

src/Airports/dynamicloader.cxx
src/Airports/groundnetwork.cxx
src/Airports/xmlloader.cxx

index 10cc253ba38ed34c0a7b4fe2df953d84fc7cf339..7da29ae73ccaa0d423cd74c06fbc63f8599356fd 100644 (file)
@@ -25,7 +25,7 @@ FGAirportDynamicsXMLLoader::FGAirportDynamicsXMLLoader(FGAirportDynamics* dyn):
     XMLVisitor(), _dynamics(dyn) {}
 
 void  FGAirportDynamicsXMLLoader::startXML () {
-  //cout << "Start XML" << endl;
+  //cout << "FGAirportDynamicsLoader::Start XML" << endl;
 }
 
 void  FGAirportDynamicsXMLLoader::endXML () {
index f1e0e086faa92073e0bcc06ef35825d113f49bc5..8bdd947fc5ce4243123f2651c85b8546062d8837 100644 (file)
@@ -606,7 +606,7 @@ void FGGroundNetwork::checkSpeedAdjustment(int id, double lat,
       
         SGGeod other(SGGeod::fromDegM(i->getLongitude(),
           i->getLatitude(), i->getAltitude()));
-        SGGeodesy::inverse(other, curr, course, az2, dist);
+        SGGeodesy::inverse(curr, other, course, az2, dist);
         bearing = fabs(heading-course);
            if (bearing > 180)
              bearing = 360-bearing;
@@ -626,7 +626,7 @@ void FGGroundNetwork::checkSpeedAdjustment(int id, double lat,
              //cerr << "Comparing " << current->getId() << " and " << i->getId() << endl;
              SGGeod other(SGGeod::fromDegM(i->getLongitude(),
           i->getLatitude(), i->getAltitude()));
-        SGGeodesy::inverse(other, curr, course, az2, dist);
+        SGGeodesy::inverse(curr, other, course, az2, dist);
         bearing = fabs(heading-course);
              if (bearing > 180)
           bearing = 360-bearing;
index 58539a1f2ccac87f4f759b1207ed05cc1395b68b..7579e8cc4c4d404d9a0fb10e7b387e38935e10e5 100644 (file)
@@ -49,7 +49,9 @@ void XMLLoader::load(FGAirportDynamics* d) {
        }
    }
   } else {
-    loadAirportXMLDataIntoVisitor(d->getId(), "groundnet", visitor);
+    if(loadAirportXMLDataIntoVisitor(d->getId(), "groundnet", visitor)) {
+        d->init();
+    }
   }
 }