mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-03-30 11:55:35 +08:00
Ref T646 Directly getting pressure altitude from FG
This commit is contained in:
committed by
Klaus Basan
parent
4267b004c8
commit
6eeba19f37
@@ -54,7 +54,7 @@ namespace BlackSimPlugin
|
||||
o_flightgearData->pitchDeg = reply.argumentAt<4>();
|
||||
o_flightgearData->rollDeg = reply.argumentAt<5>();
|
||||
o_flightgearData->trueHeadingDeg = reply.argumentAt<6>();
|
||||
o_flightgearData->seaLevelPressureInHg = reply.argumentAt<7>();
|
||||
o_flightgearData->pressureAltitudeFt = reply.argumentAt<7>();
|
||||
}
|
||||
watcher->deleteLater();
|
||||
};
|
||||
@@ -324,15 +324,14 @@ namespace BlackSimPlugin
|
||||
m_dbusInterface->callDBusAsync(QLatin1String("getTaxiLightsOn"), setterCallback(o_taxiLightsOn));
|
||||
}
|
||||
|
||||
|
||||
double CFGSwiftBusServiceProxy::getQNHInHg() const
|
||||
double CFGSwiftBusServiceProxy::getPressureAltitudeFt() const
|
||||
{
|
||||
return m_dbusInterface->callDBusRet<double>(QLatin1String("getQNHInHg"));
|
||||
return m_dbusInterface->callDBusRet<double>(QLatin1String("getPressureAltitudeFt"));
|
||||
}
|
||||
|
||||
void CFGSwiftBusServiceProxy::getQNHInHgAsync(double *o_qnh)
|
||||
void CFGSwiftBusServiceProxy::getPressureAltitudeFtAsync(double *o_qnh)
|
||||
{
|
||||
m_dbusInterface->callDBusAsync(QLatin1String("getQNHInHg"), setterCallback(o_qnh));
|
||||
m_dbusInterface->callDBusAsync(QLatin1String("getPressureAltitudeFt"), setterCallback(o_qnh));
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -271,10 +271,10 @@ namespace BlackSimPlugin
|
||||
void getTaxiLightsOnAsync(bool *o_taxiLightsOn);
|
||||
//! @}
|
||||
|
||||
//! Get barometric pressure at sea level in inches of mercury.
|
||||
//! Get pressure altitude in feet.
|
||||
//! @{
|
||||
double getQNHInHg() const;
|
||||
void getQNHInHgAsync(double *o_qnh);
|
||||
double getPressureAltitudeFt() const;
|
||||
void getPressureAltitudeFtAsync(double *o_qnh);
|
||||
//! @}
|
||||
|
||||
//! Set the current COM1 active frequency in kHz
|
||||
|
||||
@@ -185,11 +185,8 @@ namespace BlackSimPlugin
|
||||
|
||||
CAircraftSituation situation;
|
||||
situation.setPosition({ m_flightgearData.latitudeDeg, m_flightgearData.longitudeDeg, 0 });
|
||||
CAltitude altitude { m_flightgearData.altitudeM, CAltitude::MeanSeaLevel, CLengthUnit::ft() };
|
||||
situation.setAltitude({ m_flightgearData.altitudeM, CAltitude::MeanSeaLevel, CLengthUnit::ft() });
|
||||
CPressure seaLevelPressure({ m_flightgearData.seaLevelPressureInHg, CPressureUnit::inHg() });
|
||||
CAltitude pressureAltitude(altitude.toPressureAltitude(seaLevelPressure));
|
||||
situation.setPressureAltitude(pressureAltitude);
|
||||
situation.setPressureAltitude({m_flightgearData.pressureAltitudeFt, CAltitude::MeanSeaLevel, CAltitude::PressureAltitude, CLengthUnit::ft()});
|
||||
situation.setHeading({ m_flightgearData.trueHeadingDeg, CHeading::True, CAngleUnit::deg() });
|
||||
situation.setPitch({ m_flightgearData.pitchDeg, CAngleUnit::deg() });
|
||||
situation.setBank({ m_flightgearData.rollDeg, CAngleUnit::deg() });
|
||||
|
||||
@@ -97,7 +97,7 @@ namespace BlackSimPlugin
|
||||
double gearReployRatio; //!< Gear deployment ratio [%]
|
||||
QList<double> enginesN1Percentage; //!< N1 per engine [%]
|
||||
double speedBrakeRatio; //!< Speed break ratio [%]
|
||||
double seaLevelPressureInHg; //!< Sea level pressure [inhg]
|
||||
double pressureAltitudeFt; //!< Pressure altitude [inhg]
|
||||
};
|
||||
|
||||
//! Flightgear ISimulator implementation
|
||||
|
||||
Reference in New Issue
Block a user