When dealing with pitch and bank as signed ints, it is desirable to

round down, rather than toward zero, to get a linear distribution.

refs #790
This commit is contained in:
Mathew Sutcliffe
2016-11-06 19:25:39 +00:00
committed by Klaus Basan
parent f4d7474941
commit b5dfd15d66
3 changed files with 8 additions and 8 deletions

View File

@@ -51,8 +51,8 @@ namespace BlackSimPlugin
// Pitch, Bank and Heading
FS_PBH pbhstrct;
pbhstrct.hdg = newSituation.getHeading().value(CAngleUnit::deg()) * CFs9Sdk::headingMultiplier();
pbhstrct.pitch = newSituation.getPitch().value(CAngleUnit::deg()) * CFs9Sdk::pitchMultiplier();
pbhstrct.bank = newSituation.getBank().value(CAngleUnit::deg()) * CFs9Sdk::bankMultiplier();
pbhstrct.pitch = std::floor(newSituation.getPitch().value(CAngleUnit::deg()) * CFs9Sdk::pitchMultiplier());
pbhstrct.bank = std::floor(newSituation.getBank().value(CAngleUnit::deg()) * CFs9Sdk::bankMultiplier());
// MSFS has inverted pitch and bank angles
pbhstrct.pitch = ~pbhstrct.pitch;
pbhstrct.bank = ~pbhstrct.bank;
@@ -108,8 +108,8 @@ namespace BlackSimPlugin
// Pitch, Bank and Heading
FS_PBH pbhstrct;
pbhstrct.hdg = situation.getHeading().value(CAngleUnit::deg()) * CFs9Sdk::headingMultiplier();
pbhstrct.pitch = situation.getPitch().value(CAngleUnit::deg()) * CFs9Sdk::pitchMultiplier();
pbhstrct.bank = situation.getBank().value(CAngleUnit::deg()) * CFs9Sdk::bankMultiplier();
pbhstrct.pitch = std::floor(situation.getPitch().value(CAngleUnit::deg()) * CFs9Sdk::pitchMultiplier());
pbhstrct.bank = std::floor(situation.getBank().value(CAngleUnit::deg()) * CFs9Sdk::bankMultiplier());
// MSFS has inverted pitch and bank angles
pbhstrct.pitch = ~pbhstrct.pitch;
pbhstrct.bank = ~pbhstrct.bank;