mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-04-12 23:35:33 +08:00
refs #806, apply CInterpolationAndRenderingSetup
* removed no longer needed signatures * some renaming of CInterpolationAndRenderingSetup functions * adjusted UI element
This commit is contained in:
@@ -29,6 +29,11 @@ namespace BlackMisc
|
||||
return m_maxRenderedDistance.isPositiveWithEpsilonConsidered();
|
||||
}
|
||||
|
||||
bool CInterpolationAndRenderingSetup::isRenderingRestricted() const
|
||||
{
|
||||
return isRenderingEnabled() && (isMaxAircraftRestricted() || isMaxDistanceRestricted());
|
||||
}
|
||||
|
||||
int CInterpolationAndRenderingSetup::getMaxRenderedAircraft() const
|
||||
{
|
||||
return (m_maxRenderedAircraft <= InfiniteAircraft()) ? m_maxRenderedAircraft : InfiniteAircraft();
|
||||
@@ -40,8 +45,7 @@ namespace BlackMisc
|
||||
if (maxRenderedAircraft < 1)
|
||||
{
|
||||
// disable, we set both values to 0
|
||||
m_maxRenderedAircraft = 0;
|
||||
m_maxRenderedDistance = CLength(0.0, CLengthUnit::NM()); // real 0
|
||||
this->disableRendering();
|
||||
}
|
||||
else if (maxRenderedAircraft >= InfiniteAircraft())
|
||||
{
|
||||
@@ -65,8 +69,7 @@ namespace BlackMisc
|
||||
else if (distance.isZeroEpsilonConsidered())
|
||||
{
|
||||
// zero means disabled, we disable max aircraft too
|
||||
this->m_maxRenderedAircraft = 0;
|
||||
this->m_maxRenderedDistance = CLength(0.0, CLengthUnit::NM()); // real 0
|
||||
this->disableRendering();
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -76,7 +79,7 @@ namespace BlackMisc
|
||||
return true;
|
||||
}
|
||||
|
||||
void CInterpolationAndRenderingSetup::disableMaxRenderedDistance()
|
||||
void CInterpolationAndRenderingSetup::clearMaxRenderedDistance()
|
||||
{
|
||||
this->setMaxRenderedDistance(CLength(0.0, CLengthUnit::nullUnit()));
|
||||
}
|
||||
@@ -86,17 +89,39 @@ namespace BlackMisc
|
||||
return m_maxRenderedAircraft < InfiniteAircraft();
|
||||
}
|
||||
|
||||
void CInterpolationAndRenderingSetup::deleteAllRenderingRestrictions()
|
||||
void CInterpolationAndRenderingSetup::clearAllRenderingRestrictions()
|
||||
{
|
||||
this->m_maxRenderedDistance = CLength(0, CLengthUnit::nullUnit());
|
||||
this->m_maxRenderedAircraft = InfiniteAircraft();
|
||||
}
|
||||
|
||||
void CInterpolationAndRenderingSetup::disableRendering()
|
||||
{
|
||||
this->m_maxRenderedAircraft = 0;
|
||||
this->m_maxRenderedDistance = CLength(0, CLengthUnit::NM()); // zero distance
|
||||
}
|
||||
|
||||
bool CInterpolationAndRenderingSetup::isMaxDistanceRestricted() const
|
||||
{
|
||||
return !m_maxRenderedDistance.isNull();
|
||||
}
|
||||
|
||||
QString CInterpolationAndRenderingSetup::getRenderRestrictionText() const
|
||||
{
|
||||
if (!this->isRenderingRestricted()) { return "none"; }
|
||||
QString rt;
|
||||
if (this->isMaxAircraftRestricted())
|
||||
{
|
||||
rt.append(QString::number(this->getMaxRenderedAircraft())).append(" A/C");
|
||||
}
|
||||
if (this->isMaxDistanceRestricted())
|
||||
{
|
||||
if (!rt.isEmpty()) { rt.append(" ");}
|
||||
rt.append(this->getMaxRenderedDistance().valueRoundedWithUnit(CLengthUnit::NM(), 0));
|
||||
}
|
||||
return rt;
|
||||
}
|
||||
|
||||
QString CInterpolationAndRenderingSetup::convertToQString(bool i18n) const
|
||||
{
|
||||
Q_UNUSED(i18n);
|
||||
|
||||
@@ -71,12 +71,15 @@ namespace BlackMisc
|
||||
bool setMaxRenderedDistance(const BlackMisc::PhysicalQuantities::CLength &distance);
|
||||
|
||||
//! Disable
|
||||
void disableMaxRenderedDistance();
|
||||
void clearMaxRenderedDistance();
|
||||
|
||||
//! Rendering enabled
|
||||
//! Rendering enabled (at all)
|
||||
bool isRenderingEnabled() const;
|
||||
|
||||
//! Max. distance for rendering
|
||||
//! Rendering enabled, but restricted
|
||||
bool isRenderingRestricted() const;
|
||||
|
||||
//! Max.distance for rendering
|
||||
BlackMisc::PhysicalQuantities::CLength getMaxRenderedDistance() const { return m_maxRenderedDistance; }
|
||||
|
||||
//! Restricted by distance?
|
||||
@@ -85,8 +88,14 @@ namespace BlackMisc
|
||||
//! Restricted by quantity?
|
||||
bool isMaxAircraftRestricted() const;
|
||||
|
||||
//! Disable all render restrictions
|
||||
void deleteAllRenderingRestrictions();
|
||||
//! Remove all render restrictions
|
||||
void clearAllRenderingRestrictions();
|
||||
|
||||
//! Entirely disable rendering
|
||||
void disableRendering();
|
||||
|
||||
//! Text describing the restrictions
|
||||
QString getRenderRestrictionText() const;
|
||||
|
||||
//! \copydoc BlackMisc::Mixin::String::toQString
|
||||
QString convertToQString(bool i18n = false) const;
|
||||
|
||||
@@ -27,7 +27,7 @@ namespace BlackMisc
|
||||
CAirspaceAircraftSnapshot::CAirspaceAircraftSnapshot(
|
||||
const CSimulatedAircraftList &allAircraft,
|
||||
bool restricted, bool renderingEnabled, int maxAircraft,
|
||||
const CLength &maxRenderedDistance, const CLength &maxRenderedBoundary) :
|
||||
const CLength &maxRenderedDistance) :
|
||||
m_timestampMsSinceEpoch(QDateTime::currentMSecsSinceEpoch()),
|
||||
m_restricted(restricted),
|
||||
m_renderingEnabled(renderingEnabled),
|
||||
@@ -69,13 +69,11 @@ namespace BlackMisc
|
||||
int count = 0; // when max. aircraft reached?
|
||||
for (const CSimulatedAircraft ¤tAircraft : aircraft)
|
||||
{
|
||||
CCallsign cs(currentAircraft.getCallsign());
|
||||
const CCallsign cs(currentAircraft.getCallsign());
|
||||
if (currentAircraft.isEnabled())
|
||||
{
|
||||
CLength distance(currentAircraft.getRelativeDistance());
|
||||
if (count >= maxAircraft ||
|
||||
(!maxRenderedDistance.isNull() && distance >= maxRenderedBoundary) ||
|
||||
(!maxRenderedBoundary.isNull() && distance >= maxRenderedBoundary))
|
||||
if (count >= maxAircraft || (!maxRenderedDistance.isNull() && distance >= maxRenderedDistance))
|
||||
{
|
||||
m_disabledAircraftCallsignsByDistance.push_back(cs);
|
||||
}
|
||||
|
||||
@@ -39,14 +39,11 @@ namespace BlackMisc
|
||||
CAirspaceAircraftSnapshot();
|
||||
|
||||
//! Constructor
|
||||
CAirspaceAircraftSnapshot(
|
||||
const BlackMisc::Simulation::CSimulatedAircraftList &allAircraft,
|
||||
CAirspaceAircraftSnapshot(const BlackMisc::Simulation::CSimulatedAircraftList &allAircraft,
|
||||
bool restricted = false,
|
||||
bool renderingEnabled = true,
|
||||
int maxAircraft = 100,
|
||||
const BlackMisc::PhysicalQuantities::CLength &maxRenderedDistance = BlackMisc::PhysicalQuantities::CLength(0, BlackMisc::PhysicalQuantities::CLengthUnit::nullUnit()),
|
||||
const BlackMisc::PhysicalQuantities::CLength &maxRenderedBoundary = BlackMisc::PhysicalQuantities::CLength(0, BlackMisc::PhysicalQuantities::CLengthUnit::nullUnit())
|
||||
);
|
||||
const BlackMisc::PhysicalQuantities::CLength &maxRenderedDistance = BlackMisc::PhysicalQuantities::CLength(0, BlackMisc::PhysicalQuantities::CLengthUnit::nullUnit()));
|
||||
|
||||
//! Time when snapshot was taken
|
||||
const QDateTime getTimestamp() const { return QDateTime::fromMSecsSinceEpoch(m_timestampMsSinceEpoch); }
|
||||
|
||||
Reference in New Issue
Block a user