1
0
Fork 0

NavData: can refresh some in-place.

(Hacking to support faster scenery-path switching)
This commit is contained in:
James Turner 2013-11-21 17:39:05 +00:00
parent 1d8b080782
commit c3c0f68f76
4 changed files with 22 additions and 1 deletions

View file

@ -204,6 +204,16 @@ FGRunway::getApproaches(flightgear::ProcedureType type) const
return result;
}
void FGRunway::updateThreshold(const SGGeod& newThreshold, double newHeading,
double newDisplacedThreshold,
double newStopway)
{
modifyPosition(newThreshold);
_heading = newHeading;
_stopway = newStopway;
_displ_thresh = newDisplacedThreshold;
}
FGHelipad::FGHelipad(PositionedID aGuid,
PositionedID aAirport, const string& aIdent,
const SGGeod& aGeod,

View file

@ -117,6 +117,10 @@ public:
flightgear::ProcedureType type = flightgear::PROCEDURE_INVALID
) const;
void updateThreshold(const SGGeod& newThreshold,
double newHeading,
double newDisplacedThreshold,
double newStopway);
};
class FGHelipad : public FGRunwayBase

View file

@ -103,6 +103,12 @@ void FGNavRecord::setColocatedDME(PositionedID other)
mColocated = other;
}
void FGNavRecord::updateFromXML(const SGGeod& geod, double heading)
{
modifyPosition(geod);
multiuse = heading;
}
FGTACANRecord::FGTACANRecord(void) :
channel(""),
freq(0)

View file

@ -49,7 +49,6 @@ class FGNavRecord : public FGPositioned
PositionedID mColocated; // Colocated DME at a navaid (ILS, VOR, TACAN, NDB)
bool serviceable; // for failure modeling
void processSceneryILS(SGPropertyNode* aILSNode);
public:
FGNavRecord(PositionedID aGuid, Type type, const std::string& ident,
const std::string& name,
@ -90,6 +89,8 @@ public:
void setColocatedDME(PositionedID other);
bool hasDME();
void updateFromXML(const SGGeod& geod, double heading);
};
class FGTACANRecord : public SGReferenced {