refactor: Remove unused method

This commit is contained in:
Lars Toenning
2024-01-06 12:57:48 +01:00
parent 98a6cfe003
commit c132e025d8
6 changed files with 2 additions and 244 deletions

View File

@@ -587,25 +587,11 @@ namespace BlackMisc::Aviation
return true;
}
bool CAircraftSituation::setOnGroundByUnderflowDetection(const CLength &cg)
{
IsOnGround og = this->isOnGroundByElevation(cg);
if (og == OnGroundSituationUnknown) { return false; }
this->setOnGround(og, OnGroundByElevationAndCG);
return true;
}
QString CAircraftSituation::getOnGroundInfo() const
{
return this->onGroundAsString() % u' ' % this->getOnGroundDetailsAsString();
}
CLength CAircraftSituation::getGroundElevationDistance() const
{
// returns NULL if elevation is N/A
return this->getGroundElevationPlane().calculateGreatCircleDistance(*this);
}
CAircraftSituation::GndElevationInfo CAircraftSituation::getGroundElevationInfo() const
{
if (!this->hasGroundElevation()) { return NoElevationInfo; }
@@ -667,11 +653,6 @@ namespace BlackMisc::Aviation
return true;
}
CAircraftSituation::IsOnGround CAircraftSituation::isOnGroundByElevation() const
{
return this->isOnGroundByElevation(m_cg);
}
CAircraftSituation::IsOnGround CAircraftSituation::isOnGroundByElevation(const CLength &cg) const
{
const CLength groundDistance = this->getGroundDistance(cg);
@@ -761,12 +742,6 @@ namespace BlackMisc::Aviation
this->setGroundElevationInfo(NoElevationInfo);
}
const CLength &CAircraftSituation::getGroundElevationRadius() const
{
if (!this->hasGroundElevation()) { return CLength::null(); }
return m_groundElevationPlane.getRadius();
}
CLength CAircraftSituation::getHeightAboveGround() const
{
if (this->getAltitude().isNull()) { return CLength::null(); }
@@ -998,12 +973,6 @@ namespace BlackMisc::Aviation
m_cg = cg.switchedUnit(this->getAltitudeOrDefaultUnit());
}
const CLength &CAircraftSituation::getSceneryOffsetOrZero() const
{
static const CLength zero(0, CLengthUnit::ft());
return this->hasSceneryOffset() ? m_sceneryOffset : zero;
}
void CAircraftSituation::setSceneryOffset(const CLength &sceneryOffset)
{
m_sceneryOffset = sceneryOffset.switchedUnit(this->getAltitudeOrDefaultUnit());

View File

@@ -261,9 +261,6 @@ namespace BlackMisc
//! Set on ground as interpolated from ground fatcor
bool setOnGroundFromGroundFactorFromInterpolation(double threshold = 0.5);
//! Set on ground by underflow detection, detects below ground scenarios
bool setOnGroundByUnderflowDetection(const PhysicalQuantities::CLength &cg);
//! On ground info as string
QString getOnGroundInfo() const;
@@ -282,9 +279,6 @@ namespace BlackMisc
//! Elevation of the ground directly beneath
const Geo::CElevationPlane &getGroundElevationPlane() const { return m_groundElevationPlane; }
//! Distance of coordinates of situation to coordinates of elevation plane
PhysicalQuantities::CLength getGroundElevationDistance() const;
//! How did we get gnd.elevation?
GndElevationInfo getGroundElevationInfo() const;
@@ -323,7 +317,6 @@ namespace BlackMisc
//! @{
//! Is on ground by elevation data, requires elevation and CG
IsOnGround isOnGroundByElevation() const;
IsOnGround isOnGroundByElevation(const PhysicalQuantities::CLength &cg) const;
//! @}
@@ -346,9 +339,6 @@ namespace BlackMisc
//! Reset ground elevation
void resetGroundElevation();
//! Distance of ground elevation
const PhysicalQuantities::CLength &getGroundElevationRadius() const;
//! Height above ground.
PhysicalQuantities::CLength getHeightAboveGround() const;
@@ -471,15 +461,9 @@ namespace BlackMisc
//! Get scenery offset if any
const PhysicalQuantities::CLength &getSceneryOffset() const { return m_sceneryOffset; }
//! Get scenery offset if any or zero ("0")
const PhysicalQuantities::CLength &getSceneryOffsetOrZero() const;
//! Set scenery offset
void setSceneryOffset(const PhysicalQuantities::CLength &sceneryOffset);
//! Has scenery offset?
bool hasSceneryOffset() const { return !m_sceneryOffset.isNull(); }
//! Set flag indicating this is an interim position update
void setInterimFlag(bool flag) { m_isInterim = flag; }

View File

@@ -32,8 +32,6 @@ namespace BlackMisc::Aviation
qRegisterMetaType<CAircraftSituationChange::GuessedSceneryDeviation>();
}
CAircraftSituationChange::CAircraftSituationChange() {}
CAircraftSituationChange::CAircraftSituationChange(const CAircraftSituationList &situations, const PhysicalQuantities::CLength &cg, bool isVtol, bool alreadySortedLatestFirst, bool calcStdDeviations)
{
if (situations.size() < 2) { return; }

View File

@@ -65,7 +65,7 @@ namespace BlackMisc
};
//! Default constructor.
CAircraftSituationChange();
CAircraftSituationChange() = default;
//! Ctor with n situations
//! \remark the timestamps of the latest situation will be used
@@ -116,25 +116,9 @@ namespace BlackMisc
//! \copydoc BlackMisc::Aviation::CAircraftSituationList::containsPushBack
bool containsPushBack() const { return m_containsPushBack; }
//! Ground distance (AGL) if it can be calculated, otherwise NULL
//! \note distance is without CG, so on ground it can also be used to calculate
PhysicalQuantities::CLengthPair getGroundDistanceStdDevAndMean() const { return PhysicalQuantities::CLengthPair(m_gndDistStdDev, m_gndDistMean); }
//! \copydoc BlackMisc::Aviation::CAircraftSituationList::altitudeStandardDeviationAndMean
CAltitudePair getAltitudeStdDevAndMean() const { return CAltitudePair(m_altStdDev, m_altMean); }
//! \copydoc BlackMisc::Aviation::CAircraftSituationList::elevationStandardDeviationAndMean
CAltitudePair getElevationStdDevAndMean() const { return CAltitudePair(m_elvStdDev, m_elvMean); }
//! \copydoc BlackMisc::Aviation::CAircraftSituationList::groundSpeedStandardDeviationAndMean
PhysicalQuantities::CSpeedPair getGroundSpeedStdDevAndMean() const { return PhysicalQuantities::CSpeedPair(m_gsStdDev, m_gsMean); }
//! \copydoc BlackMisc::Aviation::CAircraftSituationList::pitchStandardDeviationAndMean
PhysicalQuantities::CAnglePair getPitchStdDevAndMean() const { return PhysicalQuantities::CAnglePair(m_pitchStdDev, m_pitchMean); }
//! \copydoc BlackMisc::Aviation::CAircraftSituationList::minMaxGroundDistance
PhysicalQuantities::CLengthPair getMinMaxGroundDistance() const { return PhysicalQuantities::CLengthPair(m_minGroundDistance, m_maxGroundDistance); }
//! Guess on ground flag
bool guessOnGround(CAircraftSituation &situation, const Simulation::CAircraftModel &model) const;

View File

@@ -16,9 +16,6 @@ BLACK_DEFINE_SEQUENCE_MIXINS(BlackMisc::Aviation, CAircraftSituation, CAircraftS
namespace BlackMisc::Aviation
{
CAircraftSituationList::CAircraftSituationList()
{}
CAircraftSituationList::CAircraftSituationList(const CSequence<CAircraftSituation> &other) : CSequence<CAircraftSituation>(other)
{}
@@ -64,45 +61,6 @@ namespace BlackMisc::Aviation
return c;
}
int CAircraftSituationList::extrapolateGroundFlag()
{
if (this->isEmpty()) { return 0; }
CAircraftSituationList withInfo = this->findByInboundGroundInformation(true);
withInfo.sortLatestFirst();
if (withInfo.isEmpty()) { return 0; }
const CAircraftSituation latest = withInfo.front();
int c = 0;
for (CAircraftSituation &situation : *this)
{
if (situation.isNewerThanAdjusted(latest))
{
situation.setOnGround(latest.getOnGround(), latest.getOnGroundDetails());
c++;
}
}
return c;
}
CAircraftSituationList CAircraftSituationList::findByInboundGroundInformation(bool hasGroundInfo) const
{
return this->findBy(&CAircraftSituation::hasInboundGroundDetails, hasGroundInfo);
}
bool CAircraftSituationList::containsSituationWithoutGroundElevation() const
{
return this->contains(&CAircraftSituation::hasGroundElevation, false);
}
bool CAircraftSituationList::containsGroundElevationOutsideRange(const CLength &range) const
{
for (const CAircraftSituation &situation : *this)
{
if (situation.getGroundElevationPlane().getRadius() > range) { return true; }
}
return false;
}
bool CAircraftSituationList::containsOnGroundDetails(CAircraftSituation::OnGroundDetails details) const
{
return this->contains(&CAircraftSituation::getOnGroundDetails, details);
@@ -300,11 +258,6 @@ namespace BlackMisc::Aviation
return false;
}
bool CAircraftSituationList::containsOnGroundFromNetwork() const
{
return this->contains(&CAircraftSituation::isOnGroundFromNetwork, true);
}
int CAircraftSituationList::countOnGround(CAircraftSituation::IsOnGround og) const
{
int c = 0;
@@ -315,28 +268,6 @@ namespace BlackMisc::Aviation
return c;
}
int CAircraftSituationList::countOnGroundWithElevation(CAircraftSituation::IsOnGround og) const
{
int c = 0;
for (const CAircraftSituation &situation : *this)
{
if (situation.hasGroundElevation()) { continue; }
if (situation.getOnGround() == og) { c++; }
}
return c;
}
CAircraftSituationList CAircraftSituationList::findOnGroundWithElevation(CAircraftSituation::IsOnGround og) const
{
CAircraftSituationList found;
for (const CAircraftSituation &situation : *this)
{
if (situation.hasGroundElevation()) { continue; }
if (situation.getOnGround() == og) { found.push_back(situation); }
}
return found;
}
CAircraftSituation CAircraftSituationList::findClosestElevationWithinRange(const ICoordinateGeodetic &coordinate, const CLength &range) const
{
const CLength r = range.isNull() || range < CElevationPlane::singlePointRadius() ? CElevationPlane::singlePointRadius() : range;
@@ -451,30 +382,6 @@ namespace BlackMisc::Aviation
return values;
}
QList<double> CAircraftSituationList::correctedAltitudeValues(const CLengthUnit &unit, const CLength &cg) const
{
QList<double> values;
for (const CAircraftSituation &s : *this)
{
const CAltitude alt(s.getCorrectedAltitude(cg));
if (alt.isNull()) { continue; }
values.push_back(alt.value(unit));
}
return values;
}
QList<double> CAircraftSituationList::groundDistanceValues(const CLengthUnit &unit, const CLength &cg) const
{
QList<double> values;
for (const CAircraftSituation &s : *this)
{
const CLength distance(s.getGroundDistance(cg));
if (distance.isNull()) { continue; }
values.push_back(distance.value(unit));
}
return values;
}
CSpeedPair CAircraftSituationList::groundSpeedStandardDeviationAndMean() const
{
const QList<double> gsValues = this->groundSpeedValues(CSpeedUnit::kts());
@@ -491,50 +398,6 @@ namespace BlackMisc::Aviation
return CAnglePair(CAngle(pitchDeg.first, CAngleUnit::deg()), CAngle(pitchDeg.second, CAngleUnit::deg()));
}
CAltitudePair CAircraftSituationList::elevationStandardDeviationAndMean() const
{
const QList<double> elvValues = this->elevationValues(CAltitude::defaultUnit());
if (elvValues.size() != this->size()) { return CAltitudePair(CAltitude::null(), CAltitude::null()); }
const QPair<double, double> elvFt = CMathUtils::standardDeviationAndMean(elvValues);
return CAltitudePair(CAltitude(elvFt.first, CAltitude::MeanSeaLevel, CAltitude::defaultUnit()), CAltitude(elvFt.second, CAltitude::MeanSeaLevel, CAltitude::defaultUnit()));
}
CAltitudePair CAircraftSituationList::altitudeStandardDeviationAndMean() const
{
const QList<double> altValues = this->altitudeValues(CAltitude::defaultUnit());
if (altValues.size() != this->size()) { return CAltitudePair(CAltitude::null(), CAltitude::null()); }
const QPair<double, double> altFt = CMathUtils::standardDeviationAndMean(altValues);
return CAltitudePair(CAltitude(altFt.first, CAltitude::MeanSeaLevel, CAltitude::defaultUnit()), CAltitude(altFt.second, CAltitude::MeanSeaLevel, CAltitude::defaultUnit()));
}
QPair<CLength, CLength> CAircraftSituationList::minMaxGroundDistance(const CLength &cg) const
{
const QList<double> gndDistance = this->groundDistanceValues(CAltitude::defaultUnit(), cg);
if (gndDistance.size() != this->size()) { return QPair<CLength, CLength>(CLength::null(), CLength::null()); }
const auto gndDistMinMax = std::minmax_element(gndDistance.constBegin(), gndDistance.constEnd());
const double gndDistMin = *gndDistMinMax.first;
const double gndDistMax = *gndDistMinMax.second;
return QPair<CLength, CLength>(CLength(gndDistMin, CAltitude::defaultUnit()), CLength(gndDistMax, CAltitude::defaultUnit()));
}
CAltitudePair CAircraftSituationList::altitudeAglStandardDeviationAndMean() const
{
const QList<double> altValues = this->altitudeValues(CLengthUnit::ft());
if (altValues.size() != this->size()) { return CAltitudePair(CAltitude::null(), CAltitude::null()); }
const QList<double> elvValues = this->elevationValues(CLengthUnit::ft());
if (elvValues.size() != this->size()) { return CAltitudePair(CAltitude::null(), CAltitude::null()); }
QList<double> altElvDeltas;
for (int i = 0; i < altValues.size(); i++)
{
const double delta = altValues[i] - elvValues[i];
altElvDeltas.push_back(delta);
}
const QPair<double, double> deltaFt = CMathUtils::standardDeviationAndMean(altElvDeltas);
return CAltitudePair(CAltitude(deltaFt.first, CAltitude::MeanSeaLevel, CAltitude::defaultUnit()), CAltitude(deltaFt.second, CAltitude::MeanSeaLevel, CAltitude::defaultUnit()));
}
int CAircraftSituationList::transferElevationForward(const CLength &radius)
{
if (this->size() < 2) { return 0; }

View File

@@ -45,7 +45,7 @@ namespace BlackMisc
using CSequence::CSequence;
//! Default constructor.
CAircraftSituationList();
CAircraftSituationList() = default;
//! Construct from a base class object.
CAircraftSituationList(const CSequence<CAircraftSituation> &other);
@@ -65,18 +65,6 @@ namespace BlackMisc
//! Adjust flag from parts by using CAircraftSituation::adjustGroundFlag
int adjustGroundFlag(const CAircraftParts &parts, double timeDeviationFactor = 0.1);
//! Extrapolate ground flag into the future
int extrapolateGroundFlag();
//! Find if having inbound information
CAircraftSituationList findByInboundGroundInformation(bool hasGroundInfo) const;
//! Any situation without ground info?
bool containsSituationWithoutGroundElevation() const;
//! Any situation outside range?
bool containsGroundElevationOutsideRange(const PhysicalQuantities::CLength &range) const;
//! Contains on ground details?
bool containsOnGroundDetails(CAircraftSituation::OnGroundDetails details) const;
@@ -84,9 +72,6 @@ namespace BlackMisc
//! \remark only valid for non VTOL aircraft
bool containsPushBack() const;
//! Contains any gnd.flag \c true ?
bool containsOnGroundFromNetwork() const;
//! Are all on ground details the same?
bool areAllOnGroundDetailsSame(CAircraftSituation::OnGroundDetails details) const;
@@ -129,12 +114,6 @@ namespace BlackMisc
//! Count the number of situations with CAircraftSituation::IsOnGround
int countOnGround(CAircraftSituation::IsOnGround og) const;
//! Count the number of situations with CAircraftSituation::IsOnGround and elevation
int countOnGroundWithElevation(CAircraftSituation::IsOnGround og) const;
//! Situations with CAircraftSituation::IsOnGround and elevation
CAircraftSituationList findOnGroundWithElevation(CAircraftSituation::IsOnGround og) const;
//! CLosest elevation within given range
CAircraftSituation findClosestElevationWithinRange(const Geo::ICoordinateGeodetic &coordinate, const PhysicalQuantities::CLength &range = Geo::CElevationPlane::singlePointRadius()) const;
@@ -166,31 +145,12 @@ namespace BlackMisc
//! All altitude values
QList<double> altitudeValues(const PhysicalQuantities::CLengthUnit &unit) const;
//! All corrected altitude values
QList<double> correctedAltitudeValues(const PhysicalQuantities::CLengthUnit &unit, const PhysicalQuantities::CLength &cg) const;
//! All ground distance values
QList<double> groundDistanceValues(const PhysicalQuantities::CLengthUnit &unit, const PhysicalQuantities::CLength &cg) const;
//! Pitch angles standard deviation and mean
PhysicalQuantities::CAnglePair pitchStandardDeviationAndMean() const;
//! Ground speed standard deviation and mean
PhysicalQuantities::CSpeedPair groundSpeedStandardDeviationAndMean() const;
//! Elevation standard deviation and mean
CAltitudePair elevationStandardDeviationAndMean() const;
//! Elevation standard deviation and mean
CAltitudePair altitudeStandardDeviationAndMean() const;
//! Elevation standard deviation and mean
//! \note distance is without CG, so on ground it can also be used to calculate
CAltitudePair altitudeAglStandardDeviationAndMean() const;
//! Min. and max. ground distance
PhysicalQuantities::CLengthPair minMaxGroundDistance(const PhysicalQuantities::CLength &cg) const;
//! Transfer elevations forward from older to newer
//! \pre requires a list which is sorted "latest first"
int transferElevationForward(const PhysicalQuantities::CLength &radius = Geo::CElevationPlane::singlePointRadius());