refs #863 Fixed a bug where a plane would only start rendering when it first starts moving.

This commit is contained in:
Mathew Sutcliffe
2017-02-07 00:38:59 +00:00
parent 04ddd3bfa5
commit 598733d521
3 changed files with 4 additions and 1 deletions

View File

@@ -110,6 +110,8 @@ namespace BlackMisc
status.setChangedPosition(true);
}
status.setInterpolationSucceeded(true);
m_isFirstInterpolation = false;
if (m_logger && hints.isLoggingInterpolation())
{
log.timestamp = currentTimeMsSinceEpoc;

View File

@@ -74,6 +74,7 @@ namespace BlackMisc
BlackMisc::Aviation::CAircraftSituationList m_aircraftSituations; //!< recent situations
BlackMisc::Aviation::CAircraftPartsList m_aircraftParts; //!< recent parts
BlackMisc::Aviation::CCallsign m_callsign; //!< callsign
bool m_isFirstInterpolation = true; //!< set to false after the first successful interpolation
//! Constructor
CInterpolator(const QString &objectName, const BlackMisc::Aviation::CCallsign &callsign, QObject *parent);

View File

@@ -114,7 +114,7 @@ namespace BlackMisc
currentSituation.setTimeOffsetMs(oldSituation.getTimeOffsetMs() + (newSituation.getTimeOffsetMs() - oldSituation.getTimeOffsetMs()) * simulationTimeFraction);
currentSituation.setMSecsSinceEpoch(oldSituation.getMSecsSinceEpoch() + deltaTimeFractionMs);
status.setChangedPosition(oldSituation.getPosition() != newSituation.getPosition() || oldSituation.getAltitude() != newSituation.getAltitude());
status.setChangedPosition(m_isFirstInterpolation || oldSituation.getPosition() != newSituation.getPosition() || oldSituation.getAltitude() != newSituation.getAltitude());
status.setInterpolationSucceeded(true);
log.oldSituation = oldSituation;