From f062a58d83a53312ea3542f2883ded24bdf71c37 Mon Sep 17 00:00:00 2001 From: "Alexander V. Wolf" Date: Mon, 23 May 2022 03:10:29 +0700 Subject: [PATCH 1/7] Let's start prepare to use custom filter in the Satellites plugin --- plugins/Satellites/src/Satellite.hpp | 15 ++++--- plugins/Satellites/src/Satellites.hpp | 44 +++++++++---------- .../Satellites/src/gui/SatellitesDialog.cpp | 11 +++-- 3 files changed, 35 insertions(+), 35 deletions(-) diff --git a/plugins/Satellites/src/Satellite.hpp b/plugins/Satellites/src/Satellite.hpp index a994285f92f64..e33a83f86318a 100644 --- a/plugins/Satellites/src/Satellite.hpp +++ b/plugins/Satellites/src/Satellite.hpp @@ -74,20 +74,21 @@ enum SatFlag { SatNoFlags = 0x0000, SatDisplayed = 0x0001, - SatNotDisplayed = 0x0002, + SatNotDisplayed = 0x0002, SatUser = 0x0004, - SatOrbit = 0x0008, + SatOrbit = 0x0008, SatNew = 0x0010, - SatError = 0x0020, + SatError = 0x0020, SatSmallSize = 0x0040, - SatMediumSize = 0x0080, + SatMediumSize = 0x0080, SatLargeSize = 0x0100, SatLEO = 0x0200, SatMEO = 0x0400, SatGSO = 0x0800, SatHEO = 0x1000, SatHGSO = 0x2000, - SatOutdatedTLE = 0x4000 + SatOutdatedTLE = 0x4000, + SatCustomFilter = 0x8000 }; typedef QFlags SatFlags; Q_DECLARE_OPERATORS_FOR_FLAGS(SatFlags) @@ -116,11 +117,11 @@ class Satellite : public StelObject //! @enum OptStatus operational statuses enum OptStatus { - StatusOperational = 1, + StatusOperational = 1, StatusNonoperational = 2, StatusPartiallyOperational = 3, StatusStandby = 4, - StatusSpare = 5, + StatusSpare = 5, StatusExtendedMission = 6, StatusDecayed = 7, StatusUnknown = 0 diff --git a/plugins/Satellites/src/Satellites.hpp b/plugins/Satellites/src/Satellites.hpp index 2fe931e314a11..26bcc8a37c1c1 100644 --- a/plugins/Satellites/src/Satellites.hpp +++ b/plugins/Satellites/src/Satellites.hpp @@ -148,28 +148,28 @@ typedef QList IridiumFlaresPredictionList; class Satellites : public StelObjectModule { Q_OBJECT - Q_PROPERTY(bool flagHintsVisible READ getFlagHintsVisible WRITE setFlagHintsVisible NOTIFY flagHintsVisibleChanged) - Q_PROPERTY(bool flagLabelsVisible READ getFlagLabelsVisible WRITE setFlagLabelsVisible NOTIFY flagLabelsVisibleChanged) - Q_PROPERTY(int labelFontSize READ getLabelFontSize WRITE setLabelFontSize NOTIFY labelFontSizeChanged) - Q_PROPERTY(bool autoAddEnabled READ isAutoAddEnabled WRITE setAutoAddEnabled NOTIFY autoAddEnabledChanged) - Q_PROPERTY(bool autoRemoveEnabled READ isAutoRemoveEnabled WRITE setAutoRemoveEnabled NOTIFY autoRemoveEnabledChanged) - Q_PROPERTY(bool flagIconicMode READ getFlagIconicMode WRITE setFlagIconicMode NOTIFY flagIconicModeChanged) - Q_PROPERTY(bool flagHideInvisible READ getFlagHideInvisible WRITE setFlagHideInvisible NOTIFY flagHideInvisibleChanged) - Q_PROPERTY(bool flagOrbitLines READ getFlagOrbitLines WRITE setFlagOrbitLines NOTIFY flagOrbitLinesChanged) - Q_PROPERTY(bool updatesEnabled READ getUpdatesEnabled WRITE setUpdatesEnabled NOTIFY updatesEnabledChanged) - Q_PROPERTY(int updateFrequencyHours READ getUpdateFrequencyHours WRITE setUpdateFrequencyHours NOTIFY updateFrequencyHoursChanged) - Q_PROPERTY(int orbitLineSegments READ getOrbitLineSegments WRITE setOrbitLineSegments NOTIFY orbitLineSegmentsChanged) - Q_PROPERTY(int orbitLineFadeSegments READ getOrbitLineFadeSegments WRITE setOrbitLineFadeSegments NOTIFY orbitLineFadeSegmentsChanged) - Q_PROPERTY(int orbitLineSegmentDuration READ getOrbitLineSegmentDuration WRITE setOrbitLineSegmentDuration NOTIFY orbitLineSegmentDurationChanged) - Q_PROPERTY(int tleEpochAgeDays READ getTleEpochAgeDays WRITE setTleEpochAgeDays NOTIFY tleEpochAgeDaysChanged) - Q_PROPERTY(Vec3f invisibleSatelliteColor READ getInvisibleSatelliteColor WRITE setInvisibleSatelliteColor NOTIFY invisibleSatelliteColorChanged) - Q_PROPERTY(Vec3f transitSatelliteColor READ getTransitSatelliteColor WRITE setTransitSatelliteColor NOTIFY transitSatelliteColorChanged) - Q_PROPERTY(bool flagUmbraVisible READ getFlagUmbraVisible WRITE setFlagUmbraVisible NOTIFY flagUmbraVisibleChanged) - Q_PROPERTY(bool flagUmbraAtFixedDistance READ getFlagUmbraAtFixedDistance WRITE setFlagUmbraAtFixedDistance NOTIFY flagUmbraAtFixedDistanceChanged) - Q_PROPERTY(double umbraDistance READ getUmbraDistance WRITE setUmbraDistance NOTIFY umbraDistanceChanged) - Q_PROPERTY(Vec3f umbraColor READ getUmbraColor WRITE setUmbraColor NOTIFY umbraColorChanged) - Q_PROPERTY(bool flagPenumbraVisible READ getFlagPenumbraVisible WRITE setFlagPenumbraVisible NOTIFY flagPenumbraVisibleChanged) - Q_PROPERTY(Vec3f penumbraColor READ getPenumbraColor WRITE setPenumbraColor NOTIFY penumbraColorChanged) + Q_PROPERTY(bool flagHintsVisible READ getFlagHintsVisible WRITE setFlagHintsVisible NOTIFY flagHintsVisibleChanged) + Q_PROPERTY(bool flagLabelsVisible READ getFlagLabelsVisible WRITE setFlagLabelsVisible NOTIFY flagLabelsVisibleChanged) + Q_PROPERTY(int labelFontSize READ getLabelFontSize WRITE setLabelFontSize NOTIFY labelFontSizeChanged) + Q_PROPERTY(bool autoAddEnabled READ isAutoAddEnabled WRITE setAutoAddEnabled NOTIFY autoAddEnabledChanged) + Q_PROPERTY(bool autoRemoveEnabled READ isAutoRemoveEnabled WRITE setAutoRemoveEnabled NOTIFY autoRemoveEnabledChanged) + Q_PROPERTY(bool flagIconicMode READ getFlagIconicMode WRITE setFlagIconicMode NOTIFY flagIconicModeChanged) + Q_PROPERTY(bool flagHideInvisible READ getFlagHideInvisible WRITE setFlagHideInvisible NOTIFY flagHideInvisibleChanged) + Q_PROPERTY(bool flagOrbitLines READ getFlagOrbitLines WRITE setFlagOrbitLines NOTIFY flagOrbitLinesChanged) + Q_PROPERTY(bool updatesEnabled READ getUpdatesEnabled WRITE setUpdatesEnabled NOTIFY updatesEnabledChanged) + Q_PROPERTY(int updateFrequencyHours READ getUpdateFrequencyHours WRITE setUpdateFrequencyHours NOTIFY updateFrequencyHoursChanged) + Q_PROPERTY(int orbitLineSegments READ getOrbitLineSegments WRITE setOrbitLineSegments NOTIFY orbitLineSegmentsChanged) + Q_PROPERTY(int orbitLineFadeSegments READ getOrbitLineFadeSegments WRITE setOrbitLineFadeSegments NOTIFY orbitLineFadeSegmentsChanged) + Q_PROPERTY(int orbitLineSegmentDuration READ getOrbitLineSegmentDuration WRITE setOrbitLineSegmentDuration NOTIFY orbitLineSegmentDurationChanged) + Q_PROPERTY(int tleEpochAgeDays READ getTleEpochAgeDays WRITE setTleEpochAgeDays NOTIFY tleEpochAgeDaysChanged) + Q_PROPERTY(Vec3f invisibleSatelliteColor READ getInvisibleSatelliteColor WRITE setInvisibleSatelliteColor NOTIFY invisibleSatelliteColorChanged) + Q_PROPERTY(Vec3f transitSatelliteColor READ getTransitSatelliteColor WRITE setTransitSatelliteColor NOTIFY transitSatelliteColorChanged) + Q_PROPERTY(bool flagUmbraVisible READ getFlagUmbraVisible WRITE setFlagUmbraVisible NOTIFY flagUmbraVisibleChanged) + Q_PROPERTY(bool flagUmbraAtFixedDistance READ getFlagUmbraAtFixedDistance WRITE setFlagUmbraAtFixedDistance NOTIFY flagUmbraAtFixedDistanceChanged) + Q_PROPERTY(double umbraDistance READ getUmbraDistance WRITE setUmbraDistance NOTIFY umbraDistanceChanged) + Q_PROPERTY(Vec3f umbraColor READ getUmbraColor WRITE setUmbraColor NOTIFY umbraColorChanged) + Q_PROPERTY(bool flagPenumbraVisible READ getFlagPenumbraVisible WRITE setFlagPenumbraVisible NOTIFY flagPenumbraVisibleChanged) + Q_PROPERTY(Vec3f penumbraColor READ getPenumbraColor WRITE setPenumbraColor NOTIFY penumbraColorChanged) public: //! @enum UpdateState diff --git a/plugins/Satellites/src/gui/SatellitesDialog.cpp b/plugins/Satellites/src/gui/SatellitesDialog.cpp index 86d3121626d0f..50ec00646566d 100644 --- a/plugins/Satellites/src/gui/SatellitesDialog.cpp +++ b/plugins/Satellites/src/gui/SatellitesDialog.cpp @@ -408,11 +408,7 @@ void SatellitesDialog::descriptionTextChanged() { const QModelIndex& index = selection.at(i); sat = SatellitesMgr->getById(index.data(Qt::UserRole).toString()); - - if (sat->description != newdesc) - { - sat->description = newdesc; - } + sat->description = newdesc; } saveSatellites(); } @@ -458,6 +454,8 @@ void SatellitesDialog::filterListByGroup(int index) filterModel->setSecondaryFilters(QString(), SatHGSO); else if (groupId == "[outdatedTLE]") filterModel->setSecondaryFilters(QString(), SatOutdatedTLE); + else if (groupId == "[custom]") + filterModel->setSecondaryFilters(QString(), SatCustomFilter); else filterModel->setSecondaryFilters(groupId, SatNoFlags); @@ -477,7 +475,7 @@ void SatellitesDialog::filterListByGroup(int index) void SatellitesDialog::updateFilteredSatellitesList() { QString groupId = ui->groupFilterCombo->currentData(Qt::UserRole).toString(); - if (groupId == "[outdatedTLE]") + if (groupId == "[outdatedTLE]" || groupId == "[custom]") { filterListByGroup(ui->groupFilterCombo->currentIndex()); } @@ -1065,6 +1063,7 @@ void SatellitesDialog::populateFilterMenu() ui->groupFilterCombo->insertItem(0, q_("[outdated TLE]"), QVariant("[outdatedTLE]")); ui->groupFilterCombo->insertItem(0, q_("[all user defined]"), QVariant("[userdefined]")); ui->groupFilterCombo->insertItem(0, q_("[all]"), QVariant("all")); + ui->groupFilterCombo->insertItem(0, q_("[custom filter]"), QVariant("[custom]")); // Restore current selection index = 0; From 0e7cef31c7601a9a23ead649c35249d3be875c60 Mon Sep 17 00:00:00 2001 From: "Alexander V. Wolf" Date: Mon, 23 May 2022 15:02:24 +0700 Subject: [PATCH 2/7] Added support custom filter for satellites --- plugins/Satellites/src/CMakeLists.txt | 3 + plugins/Satellites/src/Satellite.cpp | 39 ++ plugins/Satellites/src/Satellite.hpp | 43 +- plugins/Satellites/src/Satellites.cpp | 181 ++++++++ plugins/Satellites/src/Satellites.hpp | 149 ++++++- .../Satellites/src/gui/SatellitesDialog.cpp | 22 +- .../Satellites/src/gui/SatellitesDialog.hpp | 2 + .../src/gui/SatellitesFilterDialog.cpp | 90 ++++ .../src/gui/SatellitesFilterDialog.hpp | 49 ++ .../Satellites/src/gui/satellitesDialog.ui | 39 +- .../src/gui/satellitesFilterDialog.ui | 419 ++++++++++++++++++ po/stellarium/POTFILES.in | 2 + 12 files changed, 997 insertions(+), 41 deletions(-) create mode 100644 plugins/Satellites/src/gui/SatellitesFilterDialog.cpp create mode 100644 plugins/Satellites/src/gui/SatellitesFilterDialog.hpp create mode 100644 plugins/Satellites/src/gui/satellitesFilterDialog.ui diff --git a/plugins/Satellites/src/CMakeLists.txt b/plugins/Satellites/src/CMakeLists.txt index c0ab887a6479e..84172397522d3 100644 --- a/plugins/Satellites/src/CMakeLists.txt +++ b/plugins/Satellites/src/CMakeLists.txt @@ -39,11 +39,14 @@ SET(Satellites_SRCS gui/SatellitesDialog.cpp gui/SatellitesImportDialog.hpp gui/SatellitesImportDialog.cpp + gui/SatellitesFilterDialog.hpp + gui/SatellitesFilterDialog.cpp ) SET(SatellitesDialog_UIS gui/satellitesDialog.ui gui/satellitesImportDialog.ui + gui/satellitesFilterDialog.ui ) QT5_WRAP_UI(SatellitesDialog_UIS_H ${SatellitesDialog_UIS}) diff --git a/plugins/Satellites/src/Satellite.cpp b/plugins/Satellites/src/Satellite.cpp index c3aec8ee90943..63339aa0dd1e9 100644 --- a/plugins/Satellites/src/Satellite.cpp +++ b/plugins/Satellites/src/Satellite.cpp @@ -65,6 +65,23 @@ Vec3f Satellite::transitSatelliteColor = Vec3f(0.f,0.f,0.f); double Satellite::timeRateLimit = 1.0; // one JD per second by default int Satellite::tleEpochAge = 30; // default age of TLE's epoch to mark TLE as outdated (using for filters) +bool Satellite::flagCFKnownStdMagnitude = false; +bool Satellite::flagCFApogee = false; +double Satellite::minCFApogee = 20000.; +double Satellite::maxCFApogee = 55000.; +bool Satellite::flagCFPerigee = false; +double Satellite::minCFPerigee = 200.; +double Satellite::maxCFPerigee = 1500.; +bool Satellite::flagCFEccentricity = false; +double Satellite::minCFEccentricity = 0.3; +double Satellite::maxCFEccentricity = 0.9; +bool Satellite::flagCFPeriod = false; +double Satellite::minCFPeriod = 0.; +double Satellite::maxCFPeriod = 150.; +bool Satellite::flagCFInclination = false; +double Satellite::minCFInclination = 120.; +double Satellite::maxCFInclination = 360.; + #if (SATELLITES_PLUGIN_IRIDIUM == 1) double Satellite::sunReflAngle = 180.; //double Satellite::timeShift = 0.; @@ -854,6 +871,28 @@ SatFlags Satellite::getFlags() const flags |= SatHGSO; if (qAbs(StelApp::getInstance().getCore()->getJD() - tleEpochJD) > tleEpochAge) flags |= SatOutdatedTLE; + // custom filters + bool cfa = true; + if (flagCFApogee) + cfa = (apogee>=minCFApogee && apogee<=maxCFApogee); + bool cfp = true; + if (flagCFPerigee) + cfp = (perigee>=minCFPerigee && perigee<=maxCFPerigee); + bool cfe = true; + if (flagCFEccentricity) + cfe = (eccentricity>=minCFEccentricity && eccentricity<=maxCFEccentricity); + bool cfm = true; + if (flagCFKnownStdMagnitude) + cfm = (stdMag<99.0); + bool cft = true; + if (flagCFPeriod) + cft = (orbitalPeriod>=minCFPeriod && orbitalPeriod<=maxCFPeriod); + bool cfi = true; + if (flagCFInclination) + cfi = (inclination>=minCFInclination && inclination<=maxCFInclination); + if (cfa && cfp && cfe && cfm && cft && cfi) + flags |= SatCustomFilter; + return flags; } diff --git a/plugins/Satellites/src/Satellite.hpp b/plugins/Satellites/src/Satellite.hpp index e33a83f86318a..1a306ac73d3bc 100644 --- a/plugins/Satellites/src/Satellite.hpp +++ b/plugins/Satellites/src/Satellite.hpp @@ -72,21 +72,21 @@ typedef QSet GroupSet; //! @ingroup satellites enum SatFlag { - SatNoFlags = 0x0000, - SatDisplayed = 0x0001, + SatNoFlags = 0x0000, + SatDisplayed = 0x0001, SatNotDisplayed = 0x0002, - SatUser = 0x0004, - SatOrbit = 0x0008, - SatNew = 0x0010, - SatError = 0x0020, - SatSmallSize = 0x0040, + SatUser = 0x0004, + SatOrbit = 0x0008, + SatNew = 0x0010, + SatError = 0x0020, + SatSmallSize = 0x0040, SatMediumSize = 0x0080, - SatLargeSize = 0x0100, - SatLEO = 0x0200, - SatMEO = 0x0400, - SatGSO = 0x0800, - SatHEO = 0x1000, - SatHGSO = 0x2000, + SatLargeSize = 0x0100, + SatLEO = 0x0200, + SatMEO = 0x0400, + SatGSO = 0x0800, + SatHEO = 0x1000, + SatHGSO = 0x2000, SatOutdatedTLE = 0x4000, SatCustomFilter = 0x8000 }; @@ -323,6 +323,23 @@ class Satellite : public StelObject static double timeRateLimit; static int tleEpochAge; + static bool flagCFKnownStdMagnitude; + static bool flagCFApogee; + static double minCFApogee; + static double maxCFApogee; + static bool flagCFPerigee; + static double minCFPerigee; + static double maxCFPerigee; + static bool flagCFEccentricity; + static double minCFEccentricity; + static double maxCFEccentricity; + static bool flagCFPeriod; + static double minCFPeriod; + static double maxCFPeriod; + static bool flagCFInclination; + static double minCFInclination; + static double maxCFInclination; + void draw(StelCore *core, StelPainter& painter); //Satellite Orbit Position calculation diff --git a/plugins/Satellites/src/Satellites.cpp b/plugins/Satellites/src/Satellites.cpp index 6f1edbcf1fd47..92953039aac8b 100644 --- a/plugins/Satellites/src/Satellites.cpp +++ b/plugins/Satellites/src/Satellites.cpp @@ -656,6 +656,22 @@ void Satellites::restoreDefaultSettings() conf->setValue("umbra_fixed_distance", 1000.0); conf->setValue("penumbra_flag", false); conf->setValue("penumbra_color", "1.0,0.0,0.0"); + conf->setValue("cf_magnitude_flag", false); + conf->setValue("cf_apogee_flag", false); + conf->setValue("cf_apogee_min", 20000.); + conf->setValue("cf_apogee_max", 55000.); + conf->setValue("cf_perigee_flag", false); + conf->setValue("cf_perigee_min", 200.); + conf->setValue("cf_perigee_max", 1500.); + conf->setValue("cf_eccentricity_flag", false); + conf->setValue("cf_eccentricity_min", 0.3); + conf->setValue("cf_eccentricity_max", 0.9); + conf->setValue("cf_period_flag", false); + conf->setValue("cf_period_min", 0.); + conf->setValue("cf_period_max", 150.); + conf->setValue("cf_inclination_flag", false); + conf->setValue("cf_inclination_min", 120.); + conf->setValue("cf_inclination_max", 180.); conf->endGroup(); // saveTleSources() opens it for itself @@ -826,6 +842,24 @@ void Satellites::loadSettings() setFlagIconicMode(conf->value("iconic_mode_enabled", false).toBool()); setFlagHideInvisible(conf->value("hide_invisible_satellites", false).toBool()); + // custom filter + setFlagCFKnownStdMagnitude(conf->value("cf_magnitude_flag", false).toBool()); + setFlagCFApogee(conf->value("cf_apogee_flag", false).toBool()); + setMinCFApogee(conf->value("cf_apogee_min", 20000.).toDouble()); + setMaxCFApogee(conf->value("cf_apogee_max", 55000.).toDouble()); + setFlagCFPerigee(conf->value("cf_perigee_flag", false).toBool()); + setMinCFPerigee(conf->value("cf_perigee_min", 200.).toDouble()); + setMaxCFPerigee(conf->value("cf_perigee_max", 1500.).toDouble()); + setFlagCFEccentricity(conf->value("cf_eccentricity_flag", false).toBool()); + setMinCFEccentricity(conf->value("cf_eccentricity_min", 0.3).toDouble()); + setMaxCFEccentricity(conf->value("cf_eccentricity_max", 0.9).toDouble()); + setFlagCFPeriod(conf->value("cf_period_flag", false).toBool()); + setMinCFPeriod(conf->value("cf_period_min", 0.).toDouble()); + setMaxCFPeriod(conf->value("cf_period_max", 150.).toDouble()); + setFlagCFInclination(conf->value("cf_inclination_flag", false).toBool()); + setMinCFInclination(conf->value("cf_inclination_min", 120.).toDouble()); + setMaxCFInclination(conf->value("cf_inclination_max", 180.).toDouble()); + conf->endGroup(); } @@ -868,6 +902,24 @@ void Satellites::saveSettingsToConfig() conf->setValue("iconic_mode_enabled", getFlagIconicMode()); conf->setValue("hide_invisible_satellites", getFlagHideInvisible()); + // custom filter + conf->setValue("cf_magnitude_flag", getFlagCFKnownStdMagnitude()); + conf->setValue("cf_apogee_flag", getFlagCFApogee()); + conf->setValue("cf_apogee_min", getMinCFApogee()); + conf->setValue("cf_apogee_max", getMaxCFApogee()); + conf->setValue("cf_perigee_flag", getFlagCFPerigee()); + conf->setValue("cf_perigee_min", getMinCFPerigee()); + conf->setValue("cf_perigee_max", getMaxCFPerigee()); + conf->setValue("cf_eccentricity_flag", getFlagCFEccentricity()); + conf->setValue("cf_eccentricity_min", getMinCFEccentricity()); + conf->setValue("cf_eccentricity_max", getMaxCFEccentricity()); + conf->setValue("cf_period_flag", getFlagCFPeriod()); + conf->setValue("cf_period_min", getMinCFPeriod()); + conf->setValue("cf_period_max", getMaxCFPeriod()); + conf->setValue("cf_inclination_flag", getFlagCFInclination()); + conf->setValue("cf_inclination_min", getMinCFInclination()); + conf->setValue("cf_inclination_max", getMaxCFInclination()); + conf->endGroup(); // Update sources... @@ -1556,6 +1608,135 @@ void Satellites::setPenumbraColor(const Vec3f &c) emit penumbraColorChanged(c); } +void Satellites::setFlagCFKnownStdMagnitude(bool b) +{ + if (Satellite::flagCFKnownStdMagnitude != b) + { + Satellite::flagCFKnownStdMagnitude = b; + emit customFilterChanged(); + emit flagCFKnownStdMagnitudeChanged(b); + } +} + +void Satellites::setFlagCFApogee(bool b) +{ + if (Satellite::flagCFApogee != b) + { + Satellite::flagCFApogee = b; + emit customFilterChanged(); + emit flagCFApogeeChanged(b); + } +} + +void Satellites::setMinCFApogee(double v) +{ + Satellite::minCFApogee = v; + emit customFilterChanged(); + emit minCFApogeeChanged(v); +} + +void Satellites::setMaxCFApogee(double v) +{ + Satellite::maxCFApogee = v; + emit customFilterChanged(); + emit maxCFApogeeChanged(v); +} + +void Satellites::setFlagCFPerigee(bool b) +{ + if (Satellite::flagCFPerigee != b) + { + Satellite::flagCFPerigee = b; + emit customFilterChanged(); + emit flagCFPerigeeChanged(b); + } +} + +void Satellites::setMinCFPerigee(double v) +{ + Satellite::minCFPerigee = v; + emit customFilterChanged(); + emit minCFPerigeeChanged(v); +} + +void Satellites::setMaxCFPerigee(double v) +{ + Satellite::maxCFPerigee = v; + emit customFilterChanged(); + emit maxCFPerigeeChanged(v); +} + +void Satellites::setFlagCFEccentricity(bool b) +{ + if (Satellite::flagCFEccentricity != b) + { + Satellite::flagCFEccentricity = b; + emit customFilterChanged(); + emit flagCFEccentricityChanged(b); + } +} + +void Satellites::setMinCFEccentricity(double v) +{ + Satellite::minCFEccentricity = v; + emit customFilterChanged(); + emit minCFEccentricityChanged(v); +} + +void Satellites::setMaxCFEccentricity(double v) +{ + Satellite::maxCFEccentricity = v; + emit customFilterChanged(); + emit maxCFEccentricityChanged(v); +} + +void Satellites::setFlagCFPeriod(bool b) +{ + if (Satellite::flagCFPeriod != b) + { + Satellite::flagCFPeriod = b; + emit customFilterChanged(); + emit flagCFPeriodChanged(b); + } +} + +void Satellites::setMinCFPeriod(double v) +{ + Satellite::minCFPeriod = v; + emit customFilterChanged(); + emit minCFPeriodChanged(v); +} + +void Satellites::setMaxCFPeriod(double v) +{ + Satellite::maxCFPeriod = v; + emit customFilterChanged(); + emit maxCFPeriodChanged(v); +} + +void Satellites::setFlagCFInclination(bool b) +{ + if (Satellite::flagCFInclination != b) + { + Satellite::flagCFInclination = b; + emit customFilterChanged(); + emit flagCFInclinationChanged(b); + } +} + +void Satellites::setMinCFInclination(double v) +{ + Satellite::minCFInclination = v; + emit customFilterChanged(); + emit minCFInclinationChanged(v); +} + +void Satellites::setMaxCFInclination(double v) +{ + Satellite::maxCFInclination = v; + emit customFilterChanged(); + emit maxCFInclinationChanged(v); +} void Satellites::setLabelFontSize(int size) { diff --git a/plugins/Satellites/src/Satellites.hpp b/plugins/Satellites/src/Satellites.hpp index 26bcc8a37c1c1..5915e9d1dbbbb 100644 --- a/plugins/Satellites/src/Satellites.hpp +++ b/plugins/Satellites/src/Satellites.hpp @@ -148,29 +148,46 @@ typedef QList IridiumFlaresPredictionList; class Satellites : public StelObjectModule { Q_OBJECT - Q_PROPERTY(bool flagHintsVisible READ getFlagHintsVisible WRITE setFlagHintsVisible NOTIFY flagHintsVisibleChanged) - Q_PROPERTY(bool flagLabelsVisible READ getFlagLabelsVisible WRITE setFlagLabelsVisible NOTIFY flagLabelsVisibleChanged) - Q_PROPERTY(int labelFontSize READ getLabelFontSize WRITE setLabelFontSize NOTIFY labelFontSizeChanged) + Q_PROPERTY(bool flagHintsVisible READ getFlagHintsVisible WRITE setFlagHintsVisible NOTIFY flagHintsVisibleChanged) + Q_PROPERTY(bool flagLabelsVisible READ getFlagLabelsVisible WRITE setFlagLabelsVisible NOTIFY flagLabelsVisibleChanged) + Q_PROPERTY(int labelFontSize READ getLabelFontSize WRITE setLabelFontSize NOTIFY labelFontSizeChanged) Q_PROPERTY(bool autoAddEnabled READ isAutoAddEnabled WRITE setAutoAddEnabled NOTIFY autoAddEnabledChanged) Q_PROPERTY(bool autoRemoveEnabled READ isAutoRemoveEnabled WRITE setAutoRemoveEnabled NOTIFY autoRemoveEnabledChanged) - Q_PROPERTY(bool flagIconicMode READ getFlagIconicMode WRITE setFlagIconicMode NOTIFY flagIconicModeChanged) - Q_PROPERTY(bool flagHideInvisible READ getFlagHideInvisible WRITE setFlagHideInvisible NOTIFY flagHideInvisibleChanged) - Q_PROPERTY(bool flagOrbitLines READ getFlagOrbitLines WRITE setFlagOrbitLines NOTIFY flagOrbitLinesChanged) + Q_PROPERTY(bool flagIconicMode READ getFlagIconicMode WRITE setFlagIconicMode NOTIFY flagIconicModeChanged) + Q_PROPERTY(bool flagHideInvisible READ getFlagHideInvisible WRITE setFlagHideInvisible NOTIFY flagHideInvisibleChanged) + Q_PROPERTY(bool flagOrbitLines READ getFlagOrbitLines WRITE setFlagOrbitLines NOTIFY flagOrbitLinesChanged) Q_PROPERTY(bool updatesEnabled READ getUpdatesEnabled WRITE setUpdatesEnabled NOTIFY updatesEnabledChanged) - Q_PROPERTY(int updateFrequencyHours READ getUpdateFrequencyHours WRITE setUpdateFrequencyHours NOTIFY updateFrequencyHoursChanged) - Q_PROPERTY(int orbitLineSegments READ getOrbitLineSegments WRITE setOrbitLineSegments NOTIFY orbitLineSegmentsChanged) - Q_PROPERTY(int orbitLineFadeSegments READ getOrbitLineFadeSegments WRITE setOrbitLineFadeSegments NOTIFY orbitLineFadeSegmentsChanged) - Q_PROPERTY(int orbitLineSegmentDuration READ getOrbitLineSegmentDuration WRITE setOrbitLineSegmentDuration NOTIFY orbitLineSegmentDurationChanged) + Q_PROPERTY(int updateFrequencyHours READ getUpdateFrequencyHours WRITE setUpdateFrequencyHours NOTIFY updateFrequencyHoursChanged) + Q_PROPERTY(int orbitLineSegments READ getOrbitLineSegments WRITE setOrbitLineSegments NOTIFY orbitLineSegmentsChanged) + Q_PROPERTY(int orbitLineFadeSegments READ getOrbitLineFadeSegments WRITE setOrbitLineFadeSegments NOTIFY orbitLineFadeSegmentsChanged) + Q_PROPERTY(int orbitLineSegmentDuration READ getOrbitLineSegmentDuration WRITE setOrbitLineSegmentDuration NOTIFY orbitLineSegmentDurationChanged) Q_PROPERTY(int tleEpochAgeDays READ getTleEpochAgeDays WRITE setTleEpochAgeDays NOTIFY tleEpochAgeDaysChanged) - Q_PROPERTY(Vec3f invisibleSatelliteColor READ getInvisibleSatelliteColor WRITE setInvisibleSatelliteColor NOTIFY invisibleSatelliteColorChanged) + Q_PROPERTY(Vec3f invisibleSatelliteColor READ getInvisibleSatelliteColor WRITE setInvisibleSatelliteColor NOTIFY invisibleSatelliteColorChanged) Q_PROPERTY(Vec3f transitSatelliteColor READ getTransitSatelliteColor WRITE setTransitSatelliteColor NOTIFY transitSatelliteColorChanged) - Q_PROPERTY(bool flagUmbraVisible READ getFlagUmbraVisible WRITE setFlagUmbraVisible NOTIFY flagUmbraVisibleChanged) + Q_PROPERTY(bool flagUmbraVisible READ getFlagUmbraVisible WRITE setFlagUmbraVisible NOTIFY flagUmbraVisibleChanged) Q_PROPERTY(bool flagUmbraAtFixedDistance READ getFlagUmbraAtFixedDistance WRITE setFlagUmbraAtFixedDistance NOTIFY flagUmbraAtFixedDistanceChanged) Q_PROPERTY(double umbraDistance READ getUmbraDistance WRITE setUmbraDistance NOTIFY umbraDistanceChanged) - Q_PROPERTY(Vec3f umbraColor READ getUmbraColor WRITE setUmbraColor NOTIFY umbraColorChanged) - Q_PROPERTY(bool flagPenumbraVisible READ getFlagPenumbraVisible WRITE setFlagPenumbraVisible NOTIFY flagPenumbraVisibleChanged) + Q_PROPERTY(Vec3f umbraColor READ getUmbraColor WRITE setUmbraColor NOTIFY umbraColorChanged) + Q_PROPERTY(bool flagPenumbraVisible READ getFlagPenumbraVisible WRITE setFlagPenumbraVisible NOTIFY flagPenumbraVisibleChanged) Q_PROPERTY(Vec3f penumbraColor READ getPenumbraColor WRITE setPenumbraColor NOTIFY penumbraColorChanged) - + // custom filter + Q_PROPERTY(bool flagCFKnownStdMagnitude READ getFlagCFKnownStdMagnitude WRITE setFlagCFKnownStdMagnitude NOTIFY flagCFKnownStdMagnitudeChanged) + Q_PROPERTY(bool flagCFApogee READ getFlagCFApogee WRITE setFlagCFApogee NOTIFY flagCFApogeeChanged) + Q_PROPERTY(double minCFApogee READ getMinCFApogee WRITE setMinCFApogee NOTIFY minCFApogeeChanged) + Q_PROPERTY(double maxCFApogee READ getMaxCFApogee WRITE setMaxCFApogee NOTIFY maxCFApogeeChanged) + Q_PROPERTY(bool flagCFPerigee READ getFlagCFPerigee WRITE setFlagCFPerigee NOTIFY flagCFPerigeeChanged) + Q_PROPERTY(double minCFPerigee READ getMinCFPerigee WRITE setMinCFPerigee NOTIFY minCFPerigeeChanged) + Q_PROPERTY(double maxCFPerigee READ getMaxCFPerigee WRITE setMaxCFPerigee NOTIFY maxCFPerigeeChanged) + Q_PROPERTY(bool flagCFEccentricity READ getFlagCFEccentricity WRITE setFlagCFEccentricity NOTIFY flagCFEccentricityChanged) + Q_PROPERTY(double minCFEccentricity READ getMinCFEccentricity WRITE setMinCFEccentricity NOTIFY minCFEccentricityChanged) + Q_PROPERTY(double maxCFEccentricity READ getMaxCFEccentricity WRITE setMaxCFEccentricity NOTIFY maxCFEccentricityChanged) + Q_PROPERTY(bool flagCFPeriod READ getFlagCFPeriod WRITE setFlagCFPeriod NOTIFY flagCFPeriodChanged) + Q_PROPERTY(double minCFPeriod READ getMinCFPeriod WRITE setMinCFPeriod NOTIFY minCFPeriodChanged) + Q_PROPERTY(double maxCFPeriod READ getMaxCFPeriod WRITE setMaxCFPeriod NOTIFY maxCFPeriodChanged) + Q_PROPERTY(bool flagCFInclination READ getFlagCFInclination WRITE setFlagCFInclination NOTIFY flagCFInclinationChanged) + Q_PROPERTY(double minCFInclination READ getMinCFInclination WRITE setMinCFInclination NOTIFY minCFInclinationChanged) + Q_PROPERTY(double maxCFInclination READ getMaxCFInclination WRITE setMaxCFInclination NOTIFY maxCFInclinationChanged) + public: //! @enum UpdateState //! Used for keeping track of the download/update status @@ -405,10 +422,30 @@ class Satellites : public StelObjectModule void umbraDistanceChanged(double d); void flagPenumbraVisibleChanged(bool b); void penumbraColorChanged(Vec3f); + void flagCFKnownStdMagnitudeChanged(bool b); + void flagCFApogeeChanged(bool b); + void minCFApogeeChanged(double v); + void maxCFApogeeChanged(double v); + void flagCFPerigeeChanged(bool b); + void minCFPerigeeChanged(double v); + void maxCFPerigeeChanged(double v); + void flagCFEccentricityChanged(bool b); + void minCFEccentricityChanged(double v); + void maxCFEccentricityChanged(double v); + void flagCFPeriodChanged(bool b); + void minCFPeriodChanged(double v); + void maxCFPeriodChanged(double v); + void flagCFInclinationChanged(bool b); + void minCFInclinationChanged(double v); + void maxCFInclinationChanged(double v); //! Emitted when some of the plugin settings have been changed. //! Used to communicate with the configuration window. void settingsChanged(); + + //! Emitted when custom filters of the plugin have been changed. + //! Used to communicate with the configuration window. + void customFilterChanged(); //! emitted when the update status changes, e.g. when //! an update starts, completes and so on. Note that @@ -572,6 +609,86 @@ public slots: //! Save the current satellite catalog to disk. void saveCatalog(QString path=QString()); + //! Set whether custom filter 'known standard magnitude' enabled. + //! Emits customFilterChanged() if the value changes. + void setFlagCFKnownStdMagnitude(bool b); + bool getFlagCFKnownStdMagnitude() { return Satellite::flagCFKnownStdMagnitude; } + + //! Set whether custom filter 'apogee' enabled. + //! Emits customFilterChanged() if the value changes. + void setFlagCFApogee(bool b); + bool getFlagCFApogee() { return Satellite::flagCFApogee; } + + //! Set whether custom filter 'apogee' maximum value (in kilometers). + //! Emits customFilterChanged() if the value changes. + void setMaxCFApogee(double v); + double getMaxCFApogee() { return Satellite::maxCFApogee; } + + //! Set whether custom filter 'apogee' minimum value (in kilometers). + //! Emits customFilterChanged() if the value changes. + void setMinCFApogee(double v); + double getMinCFApogee() { return Satellite::minCFApogee; } + + //! Set whether custom filter 'perigee' enabled. + //! Emits customFilterChanged() if the value changes. + void setFlagCFPerigee(bool b); + bool getFlagCFPerigee() { return Satellite::flagCFPerigee; } + + //! Set whether custom filter 'perigee' maximum value (in kilometers). + //! Emits customFilterChanged() if the value changes. + void setMaxCFPerigee(double v); + double getMaxCFPerigee() { return Satellite::maxCFPerigee; } + + //! Set whether custom filter 'perigee' minimum value (in kilometers). + //! Emits customFilterChanged() if the value changes. + void setMinCFPerigee(double v); + double getMinCFPerigee() { return Satellite::minCFPerigee; } + + //! Set whether custom filter 'eccentricity' enabled. + //! Emits customFilterChanged() if the value changes. + void setFlagCFEccentricity(bool b); + bool getFlagCFEccentricity() { return Satellite::flagCFEccentricity; } + + //! Set whether custom filter 'eccentricity' maximum value. + //! Emits customFilterChanged() if the value changes. + void setMaxCFEccentricity(double v); + double getMaxCFEccentricity() { return Satellite::maxCFEccentricity; } + + //! Set whether custom filter 'eccentricity' minimum value. + //! Emits customFilterChanged() if the value changes. + void setMinCFEccentricity(double v); + double getMinCFEccentricity() { return Satellite::minCFEccentricity; } + + //! Set whether custom filter 'period' enabled. + //! Emits customFilterChanged() if the value changes. + void setFlagCFPeriod(bool b); + bool getFlagCFPeriod() { return Satellite::flagCFPeriod; } + + //! Set whether custom filter 'period' maximum value (in minutes). + //! Emits customFilterChanged() if the value changes. + void setMaxCFPeriod(double v); + double getMaxCFPeriod() { return Satellite::maxCFPeriod; } + + //! Set whether custom filter 'period' minimum value (in minutes). + //! Emits customFilterChanged() if the value changes. + void setMinCFPeriod(double v); + double getMinCFPeriod() { return Satellite::minCFPeriod; } + + //! Set whether custom filter 'inclination' enabled. + //! Emits customFilterChanged() if the value changes. + void setFlagCFInclination(bool b); + bool getFlagCFInclination() { return Satellite::flagCFInclination; } + + //! Set whether custom filter 'inclination' maximum value (in degrees). + //! Emits customFilterChanged() if the value changes. + void setMaxCFInclination(double v); + double getMaxCFInclination() { return Satellite::maxCFInclination; } + + //! Set whether custom filter 'inclination' minimum value (in degrees). + //! Emits customFilterChanged() if the value changes. + void setMinCFInclination(double v); + double getMinCFInclination() { return Satellite::minCFInclination; } + #if(SATELLITES_PLUGIN_IRIDIUM == 1) //! Set depth of prediction for Iridium flares //! @param depth in days @@ -724,7 +841,7 @@ private slots: //! Used to track whether earth shadow enlargement shall be computed after Danjon (1951) bool earthShadowEnlargementDanjon; //@} - + //! @name Screen message infrastructure //@{ QList messageIDs; diff --git a/plugins/Satellites/src/gui/SatellitesDialog.cpp b/plugins/Satellites/src/gui/SatellitesDialog.cpp index 50ec00646566d..b52f9aacb8fc9 100644 --- a/plugins/Satellites/src/gui/SatellitesDialog.cpp +++ b/plugins/Satellites/src/gui/SatellitesDialog.cpp @@ -36,6 +36,7 @@ #include "ui_satellitesDialog.h" #include "SatellitesDialog.hpp" #include "SatellitesImportDialog.hpp" +#include "SatellitesFilterDialog.hpp" #include "SatellitesListModel.hpp" #include "SatellitesListFilterModel.hpp" #include "Satellites.hpp" @@ -66,6 +67,7 @@ SatellitesDialog::SatellitesDialog() , satelliteModified(false) , updateTimer(Q_NULLPTR) , importWindow(Q_NULLPTR) + , filterWindow(Q_NULLPTR) , filterModel(Q_NULLPTR) , checkStateRole(Qt::UserRole) , delimiter(", ") @@ -91,6 +93,12 @@ SatellitesDialog::~SatellitesDialog() importWindow = Q_NULLPTR; } + if (filterWindow) + { + delete filterWindow; + filterWindow = Q_NULLPTR; + } + delete ui; } @@ -251,6 +259,9 @@ void SatellitesDialog::createDialogContent() connect(importWindow, SIGNAL(satellitesAccepted(TleDataList)), this, SLOT(addSatellites(TleDataList))); connect(ui->removeSatellitesButton, SIGNAL(clicked()), this, SLOT(removeSatellites())); + filterWindow = new SatellitesFilterDialog(); + connect(ui->customFilterButton, SIGNAL(clicked()), filterWindow, SLOT(setVisible())); + // Sources tab connect(ui->sourceList, SIGNAL(currentRowChanged(int)), this, SLOT(updateButtonsProperties())); connect(ui->sourceList, SIGNAL(itemChanged(QListWidgetItem*)), this, SLOT(saveSourceList())); @@ -258,11 +269,12 @@ void SatellitesDialog::createDialogContent() //FIXME: pressing Enter cause a call of addSourceRow() method... //connect(ui->sourceEdit, SIGNAL(returnPressed()), this, SLOT(saveEditedSource())); connect(ui->deleteSourceButton, SIGNAL(clicked()), this, SLOT(deleteSourceRow())); - connect(ui->addSourceButton, SIGNAL(clicked()), this, SLOT(addSourceRow())); + connect(ui->addSourceButton, SIGNAL(clicked()), this, SLOT(addSourceRow())); connect(ui->editSourceButton, SIGNAL(clicked()), this, SLOT(editSourceRow())); connect(ui->saveSourceButton, SIGNAL(clicked()), this, SLOT(saveEditedSource())); - connect(plugin, SIGNAL(satGroupVisibleChanged()), this, SLOT(updateSatelliteAndSaveData())); - connect(plugin, SIGNAL(settingsChanged()), this, SLOT(toggleCheckableSources())); + connect(plugin, SIGNAL(satGroupVisibleChanged()), this, SLOT(updateSatelliteAndSaveData())); + connect(plugin, SIGNAL(settingsChanged()), this, SLOT(toggleCheckableSources())); + connect(plugin, SIGNAL(customFilterChanged()), this, SLOT(updateFilteredSatellitesList())); // bug #1350669 (https://bugs.launchpad.net/stellarium/+bug/1350669) connect(ui->sourceList, SIGNAL(currentRowChanged(int)), ui->sourceList, SLOT(repaint())); ui->editSourceButton->setEnabled(false); @@ -423,6 +435,7 @@ void SatellitesDialog::filterListByGroup(int index) if (index < 0) return; + ui->customFilterButton->setEnabled(false); QString groupId = ui->groupFilterCombo->itemData(index).toString(); if (groupId == "all") filterModel->setSecondaryFilters(QString(), SatNoFlags); @@ -455,7 +468,10 @@ void SatellitesDialog::filterListByGroup(int index) else if (groupId == "[outdatedTLE]") filterModel->setSecondaryFilters(QString(), SatOutdatedTLE); else if (groupId == "[custom]") + { + ui->customFilterButton->setEnabled(true); filterModel->setSecondaryFilters(QString(), SatCustomFilter); + } else filterModel->setSecondaryFilters(groupId, SatNoFlags); diff --git a/plugins/Satellites/src/gui/SatellitesDialog.hpp b/plugins/Satellites/src/gui/SatellitesDialog.hpp index 51095312a8c92..bedf1b1648575 100644 --- a/plugins/Satellites/src/gui/SatellitesDialog.hpp +++ b/plugins/Satellites/src/gui/SatellitesDialog.hpp @@ -37,6 +37,7 @@ class QStandardItemModel; class QTimer; class SatellitesImportDialog; +class SatellitesFilterDialog; class SatellitesListFilterModel; //! Main configuration window of the %Satellites plugin. @@ -171,6 +172,7 @@ private slots: QTimer* updateTimer; SatellitesImportDialog* importWindow; + SatellitesFilterDialog* filterWindow; SatellitesListFilterModel* filterModel; diff --git a/plugins/Satellites/src/gui/SatellitesFilterDialog.cpp b/plugins/Satellites/src/gui/SatellitesFilterDialog.cpp new file mode 100644 index 0000000000000..0d4a086a0ac64 --- /dev/null +++ b/plugins/Satellites/src/gui/SatellitesFilterDialog.cpp @@ -0,0 +1,90 @@ +/* + * Stellarium Satellites Plug-in: satellites custom filter feature + * Copyright (C) 2022 Alexander Wolf + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +*/ + +#include "SatellitesFilterDialog.hpp" +#include "ui_satellitesFilterDialog.h" + +#include "StelApp.hpp" +#include "StelTranslator.hpp" + +SatellitesFilterDialog::SatellitesFilterDialog() + : StelDialog("SatellitesFilter") +{ + ui = new Ui_satellitesFilterDialog; +} + +SatellitesFilterDialog::~SatellitesFilterDialog() +{ + delete ui; +} + +void SatellitesFilterDialog::retranslate() +{ + if (dialog) + { + ui->retranslateUi(dialog); + populateTexts(); + } +} + +void SatellitesFilterDialog::setVisible(bool visible) +{ + StelDialog::setVisible(visible); +} + +void SatellitesFilterDialog::createDialogContent() +{ + ui->setupUi(dialog); + + connect(ui->closeStelWindow, SIGNAL(clicked()), this, SLOT(close())); + connect(ui->TitleBar, SIGNAL(movedTo(QPoint)), this, SLOT(handleMovedTo(QPoint))); + + connectBoolProperty(ui->inclinationCheckBox, "Satellites.flagCFInclination"); + connectDoubleProperty(ui->minInclination, "Satellites.minCFInclination"); + connectDoubleProperty(ui->maxInclination, "Satellites.maxCFInclination"); + connectBoolProperty(ui->periodCheckBox, "Satellites.flagCFPeriod"); + connectDoubleProperty(ui->minPeriod, "Satellites.minCFPeriod"); + connectDoubleProperty(ui->maxPeriod, "Satellites.maxCFPeriod"); + connectBoolProperty(ui->eccentricityCheckBox, "Satellites.flagCFEccentricity"); + connectDoubleProperty(ui->minEccentricity, "Satellites.minCFEccentricity"); + connectDoubleProperty(ui->maxEccentricity, "Satellites.maxCFEccentricity"); + connectBoolProperty(ui->apogeeCheckBox, "Satellites.flagCFApogee"); + connectDoubleProperty(ui->minApogee, "Satellites.minCFApogee"); + connectDoubleProperty(ui->maxApogee, "Satellites.maxCFApogee"); + connectBoolProperty(ui->perigeeCheckBox, "Satellites.flagCFPerigee"); + connectDoubleProperty(ui->minPerigee, "Satellites.minCFPerigee"); + connectDoubleProperty(ui->maxPerigee, "Satellites.maxCFPerigee"); + connectBoolProperty(ui->stdMagnitudeCheckBox, "Satellites.flagCFKnownStdMagnitude"); + + populateTexts(); +} + +void SatellitesFilterDialog::populateTexts() +{ + QString km = qc_("km", "distance"); + QString m = qc_("m", "time"); + ui->minApogee->setSuffix(QString(" %1").arg(km)); + ui->maxApogee->setSuffix(QString(" %1").arg(km)); + ui->minPerigee->setSuffix(QString(" %1").arg(km)); + ui->maxPerigee->setSuffix(QString(" %1").arg(km)); + ui->minPeriod->setSuffix(QString(" %1").arg(m)); + ui->maxPeriod->setSuffix(QString(" %1").arg(m)); + ui->minInclination->setSuffix("°"); + ui->maxInclination->setSuffix("°"); +} diff --git a/plugins/Satellites/src/gui/SatellitesFilterDialog.hpp b/plugins/Satellites/src/gui/SatellitesFilterDialog.hpp new file mode 100644 index 0000000000000..269eaa37ddbfb --- /dev/null +++ b/plugins/Satellites/src/gui/SatellitesFilterDialog.hpp @@ -0,0 +1,49 @@ +/* + * Stellarium Satellites Plug-in: satellites custom filter feature + * Copyright (C) 2022 Alexander Wolf + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +*/ + +#ifndef FILTERSATELLITESWINDOW_HPP +#define FILTERSATELLITESWINDOW_HPP + +#include "StelDialog.hpp" +#include "Satellites.hpp" + +class Ui_satellitesFilterDialog; + +//! @ingroup satellites +class SatellitesFilterDialog : public StelDialog +{ + Q_OBJECT + +public: + SatellitesFilterDialog(); + ~SatellitesFilterDialog() Q_DECL_OVERRIDE; + +public slots: + void retranslate() Q_DECL_OVERRIDE; + void setVisible(bool visible = true) Q_DECL_OVERRIDE; + +private slots: + void populateTexts(); + +private: + void createDialogContent() Q_DECL_OVERRIDE; + Ui_satellitesFilterDialog* ui; +}; + +#endif // FILTERSATELLITESWINDOW_HPP diff --git a/plugins/Satellites/src/gui/satellitesDialog.ui b/plugins/Satellites/src/gui/satellitesDialog.ui index 93d8b4a4a312e..2793eb049df7c 100644 --- a/plugins/Satellites/src/gui/satellitesDialog.ui +++ b/plugins/Satellites/src/gui/satellitesDialog.ui @@ -793,14 +793,36 @@ - - - true - - - QComboBox::NoInsert - - + + + + + + 0 + 0 + + + + true + + + QComboBox::NoInsert + + + + + + + Settings of custom filter + + + + :/graphicGui/uibtSettings.png + :/graphicGui/uibtSettings.png:/graphicGui/uibtSettings.png + + + + @@ -1557,7 +1579,6 @@ restoreDefaultsButton saveSettingsButton tabs - groupFilterCombo lineEditSearch satellitesList satMarkerColorPickerButton diff --git a/plugins/Satellites/src/gui/satellitesFilterDialog.ui b/plugins/Satellites/src/gui/satellitesFilterDialog.ui new file mode 100644 index 0000000000000..a118318c1c50a --- /dev/null +++ b/plugins/Satellites/src/gui/satellitesFilterDialog.ui @@ -0,0 +1,419 @@ + + + satellitesFilterDialog + + + + 0 + 0 + 312 + 289 + + + + + 0 + 0 + + + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + 16 + 25 + + + + + 16777215 + 25 + + + + QFrame::StyledPanel + + + + 0 + + + 0 + + + 4 + + + 0 + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + + + + + + + + + + + Satellites filter + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + + 16 + 16 + + + + + 16 + 16 + + + + Qt::NoFocus + + + + + + + + + + + + + Settings of custom filter + + + + 0 + + + 0 + + + 0 + + + 0 + + + + + Min. + + + Qt::AlignCenter + + + + + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + 0 + + + 75.000000000000000 + + + 100000.000000000000000 + + + 200.000000000000000 + + + + + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + 0 + + + 100000.000000000000000 + + + 150.000000000000000 + + + + + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + 0 + + + 75.000000000000000 + + + 100000.000000000000000 + + + 1500.000000000000000 + + + + + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + 0 + + + 100000.000000000000000 + + + + + + + Apogee + + + + + + + Max. + + + Qt::AlignCenter + + + + + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + 1 + + + 1.000000000000000 + + + 0.100000000000000 + + + 0.300000000000000 + + + + + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + 1 + + + 1.000000000000000 + + + 0.100000000000000 + + + 0.900000000000000 + + + + + + + Period + + + + + + + Perigee + + + + + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + 0 + + + 75.000000000000000 + + + 100000.000000000000000 + + + 55000.000000000000000 + + + + + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + 0 + + + 75.000000000000000 + + + 100000.000000000000000 + + + 20000.000000000000000 + + + + + + + true + + + Known standard magnitude + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + Eccentricity + + + + + + + Inclination + + + + + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + 0 + + + 360.000000000000000 + + + 120.000000000000000 + + + + + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + 0 + + + 360.000000000000000 + + + 180.000000000000000 + + + + + + + + + + + BarFrame + QFrame +
Dialog.hpp
+ 1 +
+
+ + +
diff --git a/po/stellarium/POTFILES.in b/po/stellarium/POTFILES.in index d28230dd49088..593035501679a 100644 --- a/po/stellarium/POTFILES.in +++ b/po/stellarium/POTFILES.in @@ -105,8 +105,10 @@ plugins/Satellites/src/Satellites.cpp plugins/Satellites/src/Satellite.cpp plugins/Satellites/src/gui/SatellitesDialog.cpp plugins/Satellites/src/gui/SatellitesImportDialog.cpp +plugins/Satellites/src/gui/SatellitesFilterDialog.cpp plugins/Satellites/src/ui_satellitesDialog.h plugins/Satellites/src/ui_satellitesImportDialog.h +plugins/Satellites/src/ui_satellitesFilterDialog.h plugins/TelescopeControl/src/TelescopeControl.cpp plugins/TelescopeControl/src/Rts2/TelescopeClientJsonRts2.cpp plugins/TelescopeControl/src/INDI/ui_TelescopeClientINDIWidget.h From d6abf7226b079f082c754ed404f079bf9e08c8a7 Mon Sep 17 00:00:00 2001 From: "Alexander V. Wolf" Date: Mon, 23 May 2022 16:18:12 +0700 Subject: [PATCH 3/7] Cosmetic fix --- .../src/gui/SatellitesFilterDialog.cpp | 41 +++++++++++++++++++ .../src/gui/SatellitesFilterDialog.hpp | 5 +++ 2 files changed, 46 insertions(+) diff --git a/plugins/Satellites/src/gui/SatellitesFilterDialog.cpp b/plugins/Satellites/src/gui/SatellitesFilterDialog.cpp index 0d4a086a0ac64..f63d84f317ebe 100644 --- a/plugins/Satellites/src/gui/SatellitesFilterDialog.cpp +++ b/plugins/Satellites/src/gui/SatellitesFilterDialog.cpp @@ -72,9 +72,50 @@ void SatellitesFilterDialog::createDialogContent() connectDoubleProperty(ui->maxPerigee, "Satellites.maxCFPerigee"); connectBoolProperty(ui->stdMagnitudeCheckBox, "Satellites.flagCFKnownStdMagnitude"); + updateMinMaxInclination(ui->inclinationCheckBox->isChecked()); + connect(ui->inclinationCheckBox, SIGNAL(clicked(bool)), this, SLOT(updateMinMaxInclination(bool))); + updateMinMaxApogee(ui->apogeeCheckBox->isChecked()); + connect(ui->apogeeCheckBox, SIGNAL(clicked(bool)), this, SLOT(updateMinMaxApogee(bool))); + updateMinMaxPerigee(ui->perigeeCheckBox->isChecked()); + connect(ui->perigeeCheckBox, SIGNAL(clicked(bool)), this, SLOT(updateMinMaxPerigee(bool))); + updateMinMaxPeriod(ui->periodCheckBox->isChecked()); + connect(ui->periodCheckBox, SIGNAL(clicked(bool)), this, SLOT(updateMinMaxPeriod(bool))); + updateMinMaxEccentricity(ui->eccentricityCheckBox->isChecked()); + connect(ui->eccentricityCheckBox, SIGNAL(clicked(bool)), this, SLOT(updateMinMaxEccentricity(bool))); + populateTexts(); } +void SatellitesFilterDialog::updateMinMaxInclination(bool state) +{ + ui->minInclination->setEnabled(state); + ui->maxInclination->setEnabled(state); +} + +void SatellitesFilterDialog::updateMinMaxApogee(bool state) +{ + ui->minApogee->setEnabled(state); + ui->maxApogee->setEnabled(state); +} + +void SatellitesFilterDialog::updateMinMaxPerigee(bool state) +{ + ui->minPerigee->setEnabled(state); + ui->maxPerigee->setEnabled(state); +} + +void SatellitesFilterDialog::updateMinMaxPeriod(bool state) +{ + ui->minPeriod->setEnabled(state); + ui->maxPeriod->setEnabled(state); +} + +void SatellitesFilterDialog::updateMinMaxEccentricity(bool state) +{ + ui->minEccentricity->setEnabled(state); + ui->maxEccentricity->setEnabled(state); +} + void SatellitesFilterDialog::populateTexts() { QString km = qc_("km", "distance"); diff --git a/plugins/Satellites/src/gui/SatellitesFilterDialog.hpp b/plugins/Satellites/src/gui/SatellitesFilterDialog.hpp index 269eaa37ddbfb..b9afaf98aaf7a 100644 --- a/plugins/Satellites/src/gui/SatellitesFilterDialog.hpp +++ b/plugins/Satellites/src/gui/SatellitesFilterDialog.hpp @@ -40,6 +40,11 @@ public slots: private slots: void populateTexts(); + void updateMinMaxInclination(bool state); + void updateMinMaxApogee(bool state); + void updateMinMaxPerigee(bool state); + void updateMinMaxPeriod(bool state); + void updateMinMaxEccentricity(bool state); private: void createDialogContent() Q_DECL_OVERRIDE; From 8c0eeda5c16112fdebbcebed137a6ffd00b5bdfb Mon Sep 17 00:00:00 2001 From: "Alexander V. Wolf" Date: Mon, 23 May 2022 17:02:56 +0700 Subject: [PATCH 4/7] Added support RCS filter --- plugins/Satellites/src/Satellite.cpp | 8 +- plugins/Satellites/src/Satellite.hpp | 3 + plugins/Satellites/src/Satellites.cpp | 33 +++ plugins/Satellites/src/Satellites.hpp | 21 ++ .../src/gui/SatellitesFilterDialog.cpp | 15 ++ .../src/gui/SatellitesFilterDialog.hpp | 1 + .../src/gui/satellitesFilterDialog.ui | 251 ++++++++++-------- 7 files changed, 222 insertions(+), 110 deletions(-) diff --git a/plugins/Satellites/src/Satellite.cpp b/plugins/Satellites/src/Satellite.cpp index 63339aa0dd1e9..2def42fd7f8e7 100644 --- a/plugins/Satellites/src/Satellite.cpp +++ b/plugins/Satellites/src/Satellite.cpp @@ -81,6 +81,9 @@ double Satellite::maxCFPeriod = 150.; bool Satellite::flagCFInclination = false; double Satellite::minCFInclination = 120.; double Satellite::maxCFInclination = 360.; +bool Satellite::flagCFRCS = false; +double Satellite::minCFRCS = 0.1; +double Satellite::maxCFRCS = 100.; #if (SATELLITES_PLUGIN_IRIDIUM == 1) double Satellite::sunReflAngle = 180.; @@ -890,7 +893,10 @@ SatFlags Satellite::getFlags() const bool cfi = true; if (flagCFInclination) cfi = (inclination>=minCFInclination && inclination<=maxCFInclination); - if (cfa && cfp && cfe && cfm && cft && cfi) + bool cfr = true; + if (flagCFRCS) + cfr = (RCS>=minCFRCS && RCS<=maxCFRCS); + if (cfa && cfp && cfe && cfm && cft && cfi && cfr) flags |= SatCustomFilter; return flags; diff --git a/plugins/Satellites/src/Satellite.hpp b/plugins/Satellites/src/Satellite.hpp index 1a306ac73d3bc..d037b19f57b95 100644 --- a/plugins/Satellites/src/Satellite.hpp +++ b/plugins/Satellites/src/Satellite.hpp @@ -339,6 +339,9 @@ class Satellite : public StelObject static bool flagCFInclination; static double minCFInclination; static double maxCFInclination; + static bool flagCFRCS; + static double minCFRCS; + static double maxCFRCS; void draw(StelCore *core, StelPainter& painter); diff --git a/plugins/Satellites/src/Satellites.cpp b/plugins/Satellites/src/Satellites.cpp index 92953039aac8b..fef71c96ccda8 100644 --- a/plugins/Satellites/src/Satellites.cpp +++ b/plugins/Satellites/src/Satellites.cpp @@ -672,6 +672,9 @@ void Satellites::restoreDefaultSettings() conf->setValue("cf_inclination_flag", false); conf->setValue("cf_inclination_min", 120.); conf->setValue("cf_inclination_max", 180.); + conf->setValue("cf_rcs_flag", false); + conf->setValue("cf_rcs_min", 0.1); + conf->setValue("cf_rcs_max", 100.); conf->endGroup(); // saveTleSources() opens it for itself @@ -859,6 +862,9 @@ void Satellites::loadSettings() setFlagCFInclination(conf->value("cf_inclination_flag", false).toBool()); setMinCFInclination(conf->value("cf_inclination_min", 120.).toDouble()); setMaxCFInclination(conf->value("cf_inclination_max", 180.).toDouble()); + setFlagCFRCS(conf->value("cf_rcs_flag", false).toBool()); + setMinCFRCS(conf->value("cf_rcs_min", 0.1).toDouble()); + setMaxCFRCS(conf->value("cf_rcs_max", 100.).toDouble()); conf->endGroup(); } @@ -919,6 +925,9 @@ void Satellites::saveSettingsToConfig() conf->setValue("cf_inclination_flag", getFlagCFInclination()); conf->setValue("cf_inclination_min", getMinCFInclination()); conf->setValue("cf_inclination_max", getMaxCFInclination()); + conf->setValue("cf_rcs_flag", getFlagCFRCS()); + conf->setValue("cf_rcs_min", getMinCFRCS()); + conf->setValue("cf_rcs_max", getMaxCFRCS()); conf->endGroup(); @@ -1738,6 +1747,30 @@ void Satellites::setMaxCFInclination(double v) emit maxCFInclinationChanged(v); } +void Satellites::setFlagCFRCS(bool b) +{ + if (Satellite::flagCFRCS != b) + { + Satellite::flagCFRCS = b; + emit customFilterChanged(); + emit flagCFRCSChanged(b); + } +} + +void Satellites::setMinCFRCS(double v) +{ + Satellite::minCFRCS = v; + emit customFilterChanged(); + emit minCFRCSChanged(v); +} + +void Satellites::setMaxCFRCS(double v) +{ + Satellite::maxCFRCS = v; + emit customFilterChanged(); + emit maxCFRCSChanged(v); +} + void Satellites::setLabelFontSize(int size) { if (labelFont.pixelSize() != size) diff --git a/plugins/Satellites/src/Satellites.hpp b/plugins/Satellites/src/Satellites.hpp index 5915e9d1dbbbb..49672388a153f 100644 --- a/plugins/Satellites/src/Satellites.hpp +++ b/plugins/Satellites/src/Satellites.hpp @@ -187,6 +187,9 @@ class Satellites : public StelObjectModule Q_PROPERTY(bool flagCFInclination READ getFlagCFInclination WRITE setFlagCFInclination NOTIFY flagCFInclinationChanged) Q_PROPERTY(double minCFInclination READ getMinCFInclination WRITE setMinCFInclination NOTIFY minCFInclinationChanged) Q_PROPERTY(double maxCFInclination READ getMaxCFInclination WRITE setMaxCFInclination NOTIFY maxCFInclinationChanged) + Q_PROPERTY(bool flagCFRCS READ getFlagCFRCS WRITE setFlagCFRCS NOTIFY flagCFRCSChanged) + Q_PROPERTY(double minCFRCS READ getMinCFRCS WRITE setMinCFRCS NOTIFY minCFRCSChanged) + Q_PROPERTY(double maxCFRCS READ getMaxCFRCS WRITE setMaxCFRCS NOTIFY maxCFRCSChanged) public: //! @enum UpdateState @@ -438,6 +441,9 @@ class Satellites : public StelObjectModule void flagCFInclinationChanged(bool b); void minCFInclinationChanged(double v); void maxCFInclinationChanged(double v); + void flagCFRCSChanged(bool b); + void minCFRCSChanged(double v); + void maxCFRCSChanged(double v); //! Emitted when some of the plugin settings have been changed. //! Used to communicate with the configuration window. @@ -689,6 +695,21 @@ public slots: void setMinCFInclination(double v); double getMinCFInclination() { return Satellite::minCFInclination; } + //! Set whether custom filter 'rcs' enabled. + //! Emits customFilterChanged() if the value changes. + void setFlagCFRCS(bool b); + bool getFlagCFRCS() { return Satellite::flagCFRCS; } + + //! Set whether custom filter 'rcs' maximum value (in square meters). + //! Emits customFilterChanged() if the value changes. + void setMaxCFRCS(double v); + double getMaxCFRCS() { return Satellite::maxCFRCS; } + + //! Set whether custom filter 'rcs' minimum value (in square meters). + //! Emits customFilterChanged() if the value changes. + void setMinCFRCS(double v); + double getMinCFRCS() { return Satellite::minCFRCS; } + #if(SATELLITES_PLUGIN_IRIDIUM == 1) //! Set depth of prediction for Iridium flares //! @param depth in days diff --git a/plugins/Satellites/src/gui/SatellitesFilterDialog.cpp b/plugins/Satellites/src/gui/SatellitesFilterDialog.cpp index f63d84f317ebe..68398606decf6 100644 --- a/plugins/Satellites/src/gui/SatellitesFilterDialog.cpp +++ b/plugins/Satellites/src/gui/SatellitesFilterDialog.cpp @@ -70,6 +70,9 @@ void SatellitesFilterDialog::createDialogContent() connectBoolProperty(ui->perigeeCheckBox, "Satellites.flagCFPerigee"); connectDoubleProperty(ui->minPerigee, "Satellites.minCFPerigee"); connectDoubleProperty(ui->maxPerigee, "Satellites.maxCFPerigee"); + connectBoolProperty(ui->rcsCheckBox, "Satellites.flagCFRCS"); + connectDoubleProperty(ui->minRCS, "Satellites.minCFRCS"); + connectDoubleProperty(ui->maxRCS, "Satellites.maxCFRCS"); connectBoolProperty(ui->stdMagnitudeCheckBox, "Satellites.flagCFKnownStdMagnitude"); updateMinMaxInclination(ui->inclinationCheckBox->isChecked()); @@ -82,6 +85,8 @@ void SatellitesFilterDialog::createDialogContent() connect(ui->periodCheckBox, SIGNAL(clicked(bool)), this, SLOT(updateMinMaxPeriod(bool))); updateMinMaxEccentricity(ui->eccentricityCheckBox->isChecked()); connect(ui->eccentricityCheckBox, SIGNAL(clicked(bool)), this, SLOT(updateMinMaxEccentricity(bool))); + updateMinMaxRCS(ui->rcsCheckBox->isChecked()); + connect(ui->rcsCheckBox, SIGNAL(clicked(bool)), this, SLOT(updateMinMaxRCS(bool))); populateTexts(); } @@ -116,10 +121,17 @@ void SatellitesFilterDialog::updateMinMaxEccentricity(bool state) ui->maxEccentricity->setEnabled(state); } +void SatellitesFilterDialog::updateMinMaxRCS(bool state) +{ + ui->minRCS->setEnabled(state); + ui->maxRCS->setEnabled(state); +} + void SatellitesFilterDialog::populateTexts() { QString km = qc_("km", "distance"); QString m = qc_("m", "time"); + QString sm = qc_("m", "distance"); ui->minApogee->setSuffix(QString(" %1").arg(km)); ui->maxApogee->setSuffix(QString(" %1").arg(km)); ui->minPerigee->setSuffix(QString(" %1").arg(km)); @@ -128,4 +140,7 @@ void SatellitesFilterDialog::populateTexts() ui->maxPeriod->setSuffix(QString(" %1").arg(m)); ui->minInclination->setSuffix("°"); ui->maxInclination->setSuffix("°"); + ui->rcsCheckBox->setToolTip(q_("Radar cross-section")); + ui->minRCS->setSuffix(QString(" %1%2").arg(sm, "²")); + ui->maxRCS->setSuffix(QString(" %1%2").arg(sm, "²")); } diff --git a/plugins/Satellites/src/gui/SatellitesFilterDialog.hpp b/plugins/Satellites/src/gui/SatellitesFilterDialog.hpp index b9afaf98aaf7a..976d1e7a5c743 100644 --- a/plugins/Satellites/src/gui/SatellitesFilterDialog.hpp +++ b/plugins/Satellites/src/gui/SatellitesFilterDialog.hpp @@ -45,6 +45,7 @@ private slots: void updateMinMaxPerigee(bool state); void updateMinMaxPeriod(bool state); void updateMinMaxEccentricity(bool state); + void updateMinMaxRCS(bool state); private: void createDialogContent() Q_DECL_OVERRIDE; diff --git a/plugins/Satellites/src/gui/satellitesFilterDialog.ui b/plugins/Satellites/src/gui/satellitesFilterDialog.ui index a118318c1c50a..4c540ddca7ab3 100644 --- a/plugins/Satellites/src/gui/satellitesFilterDialog.ui +++ b/plugins/Satellites/src/gui/satellitesFilterDialog.ui @@ -148,37 +148,76 @@ 0 - - - - Min. + + + + Qt::Vertical + + + 20 + 40 + + + + + + - Qt::AlignCenter + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + 1 + + + 1.000000000000000 + + + 0.100000000000000 + + + 0.300000000000000 - - + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - 0 - - - 75.000000000000000 + 1 - 100000.000000000000000 + 1.000000000000000 + + + 0.100000000000000 - 200.000000000000000 + 0.900000000000000 - - + + + + true + + + Known standard magnitude + + + + + + + Eccentricity + + + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter @@ -186,49 +225,52 @@ 0 - 100000.000000000000000 + 360.000000000000000 - 150.000000000000000 + 120.000000000000000 - - + + + + Inclination + + + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter 0 - - 75.000000000000000 - - 100000.000000000000000 + 360.000000000000000 - 1500.000000000000000 + 180.000000000000000 - - + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter 0 + + 75.000000000000000 + 100000.000000000000000 - - - - - - Apogee + + 200.000000000000000 @@ -242,60 +284,71 @@ - - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - 1 + + + + Min. - - 1.000000000000000 + + Qt::AlignCenter - - 0.100000000000000 + + + + + + Period - - 0.300000000000000 + + + + + + Perigee - - + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - 1 + 0 - - 1.000000000000000 + + 75.000000000000000 - - 0.100000000000000 + + 100000.000000000000000 - 0.900000000000000 + 20000.000000000000000 - - + + - Period + Apogee - - - - Perigee + + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + 0 + + + 100000.000000000000000 - - + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter @@ -309,12 +362,12 @@ 100000.000000000000000 - 55000.000000000000000 + 1500.000000000000000 - - + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter @@ -328,76 +381,56 @@ 100000.000000000000000 - 20000.000000000000000 + 55000.000000000000000 - - - - true - - - Known standard magnitude + + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - - - - Qt::Vertical + + 0 - - - 20 - 40 - + + 100000.000000000000000 - - - - - - Eccentricity + + 150.000000000000000 - - + + - Inclination + RCS - - + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - 0 + + 0.100000000000000 - 360.000000000000000 - - - 120.000000000000000 + 10000.000000000000000 - - + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - 0 + + 0.100000000000000 - 360.000000000000000 - - - 180.000000000000000 + 10000.000000000000000 From d2e55922f200499ecef6b2898998023ddabdc783 Mon Sep 17 00:00:00 2001 From: "Alexander V. Wolf" Date: Mon, 23 May 2022 20:46:55 +0700 Subject: [PATCH 5/7] Updated Stellarium User Guide --- guide/pictures/satellites_plugin_filters.jpg | Bin 0 -> 60285 bytes .../pictures/satellites_plugin_satellites.jpg | Bin 0 -> 91028 bytes .../pictures/satellites_plugin_satellites.png | Bin 125206 -> 0 bytes guide/plg_catalogs.tex | 62 ++++++++++++++---- .../Satellites/src/gui/SatellitesDialog.cpp | 7 +- 5 files changed, 53 insertions(+), 16 deletions(-) create mode 100644 guide/pictures/satellites_plugin_filters.jpg create mode 100644 guide/pictures/satellites_plugin_satellites.jpg delete mode 100644 guide/pictures/satellites_plugin_satellites.png diff --git a/guide/pictures/satellites_plugin_filters.jpg b/guide/pictures/satellites_plugin_filters.jpg new file mode 100644 index 0000000000000000000000000000000000000000..f4ab49619f3d1b2e194e31844680f2becb36fa5f GIT binary patch literal 60285 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 literal 0 HcmV?d00001 diff --git a/guide/pictures/satellites_plugin_satellites.jpg b/guide/pictures/satellites_plugin_satellites.jpg new file mode 100644 index 0000000000000000000000000000000000000000..69c57fa19b3edc8ca004ea4ab6b206e23ad01837 GIT binary patch literal 91028 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 literal 0 HcmV?d00001 diff --git a/guide/pictures/satellites_plugin_satellites.png b/guide/pictures/satellites_plugin_satellites.png deleted file mode 100644 index c30aa32007f9bcfcb187c4f9fc145deabe1a1ab3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 125206 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�=Ge##!MG+oX9*8WS!_oC2- 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 diff --git a/guide/plg_catalogs.tex b/guide/plg_catalogs.tex index 848dd766b2944..f142ce9cf4048 100644 --- a/guide/plg_catalogs.tex +++ b/guide/plg_catalogs.tex @@ -1245,6 +1245,12 @@ \section{Satellites Plugin} prepared by \url{https://celestrak.com} to keep itself up-to-date, but the users can specify other sources online or load updates from local files. +\begin{figure}[htbp] + \centering\includegraphics[width=0.8\textwidth]{satellites_plugin_configuration.jpg} + \caption{Configuration of the Satellites plugin.} + \label{fig:plugins:Satellites:Configuration} +\end{figure} + If the plugin has been enabled (see section~\ref{sec:Plugins:EnablingPlugins}), just click on the Satellite button \guibutton{0.6}{bt_hint.png} on the bottom @@ -1265,22 +1271,43 @@ \section{Satellites Plugin} section~\ref{sec:Eclipses:lunar}), at the distance of the currently selected satellite, or at a fixed distance from Earth's surface. -\begin{figure}[htbp] -\centering\includegraphics[width=0.8\textwidth]{satellites_plugin_configuration.jpg} -\caption{Configuration of the Satellites plugin.} -\label{fig:plugins:Satellites:Configuration} -\end{figure} - \subsection{Satellite Properties} \label{sec:plugins:Satellites:properties} +\begin{figure}[tbp] + \centering\includegraphics[width=0.8\textwidth]{satellites_plugin_satellites.jpg} + \caption{Configuration of the Satellites plugin --- satellites properties.} + \label{fig:plugins:Satellites:Configuration:Satellites} +\end{figure} + \begin{description} -\item[Name and identifiers] Each satellite has a name. It's displayed as a label of the satellite hint and in the list of satellites. Names are not unique though, so they are used only +\item[Name] Each satellite has a name. It's displayed as a label of the satellite hint and in the list of satellites. Names are not unique though, so they are used only for presentation purposes. -\item[Satellite Catalog] In the \emph{Satellite Catalog} satellites are uniquely identified by their NORAD number, which is encoded in TLEs. +\item[Catalog number] In the \emph{Satellite Catalog} satellites are uniquely identified by their NORAD number, which is encoded in TLEs. + +\item[I.D. (The International Designator)] In the \emph{Satellite Catalog} satellites are also uniquely identified by their International Designator also known as COSPAR ID, which is encoded in TLEs. + +\item[Standard magnitude] The standard magnitude may be an estimate based on the mean cross- +sectional area derived from its dimensions, or it may be a mean value derived from visual observations.\footnote{The standard magnitude and RCS data was obtained from Mike McCants' quicksat catalog with his permissions.} + +\item[RCS] The Radar Cross Section is a median value derived from the last several years of values in the Satellite Situation Report. The units of the RCS are square meters. + +\item[Perigee] The perigee is the nearest point respectively of a satellite's direct orbit around the Earth. The units of perigee are kilometers. -\item[Grouping] +\item[Apogee] The apogee is the farthest point respectively of a satellite's direct orbit around the Earth. The units of apogee are kilometers. + +\item[Period] The orbital period is simply how long an orbiting satellite takes to complete one orbit. The units of period are minutes. + +\item[Displayed] In the \emph{Satellite Catalog} satellites this property whether the selected satellite should be displayed on the sky. + +\item[Orbit] In the \emph{Satellite Catalog} satellites this property whether the orbit of the selected satellite should be displayed on the sky. + +\item[Do not update] In the \emph{Satellite Catalog} satellites this property mark satellites, which TLE should not be updated. + +\item[Description] The used defined notes to the selected satellite. + +\item[Groups] A satellite can belong to one or more groups such as ``amateur'', ``geostationary'' or ``navigation''. They have no other function but to help the user organize the satellite collection. Group names are @@ -1289,14 +1316,23 @@ \subsection{Satellite Properties} grouping. A satellite may also not belong to any group at all. By convention, group names are in lowercase. The GUI translates some of the groups used in the default catalog. + +The group names also using as an additional filters for filtering the satellites (see UI elements on the left side). + +\item[TLE set] The raw TLE data of selected satellite. A two-line element set (TLE) is a data format encoding a list of orbital elements of an Earth-orbiting object for a given point in time, the epoch. Using a suitable prediction formula, the state (position and velocity) at any point in the past or future can be estimated to some accuracy. + +\item[Epoch of the TLE] Human-readable epoch of current set of the TLE. \end{description} -\begin{figure}[tbp] - \centering\includegraphics[width=0.8\textwidth]{satellites_plugin_satellites.png} - \caption{Configuration of the Satellites plugin --- satellites properties.} - \label{fig:plugins:Satellites:Configuration:Satellites} +On the left side of this tab you may see tools for filtering the satellites. In upper side UI has drop-down list with many predefined filters. Some filters are connected to user defined groups to quick get a list of satellites in some group, such as all satellites from group ``navigation''. Some filters are connected to orbital properties of satellites, such selecting the filter ``[LEO]'' will show all low-orbital satellites. + +\begin{figure}[ht] + \centering\includegraphics[width=0.6\textwidth]{satellites_plugin_filters.jpg} + \caption{Configuration of the Satellites plugin --- satellites custom filter.} + \label{fig:plugins:Satellites:Configuration:SatellitesFilter} \end{figure} +You can display \newFeature{0.22.2} list of satellites by specific collection of they properties, when filter ``[custom filter]'' will be selected (see \ref{fig:plugins:Satellites:Configuration:SatellitesFilter}). The settings of this filter available through button \guibutton{0.6}{uibtSettings.png}, wich located at right of drop-down list. \subsection{Satellite Catalog} \label{sec:plugins:Satellites:catalog} diff --git a/plugins/Satellites/src/gui/SatellitesDialog.cpp b/plugins/Satellites/src/gui/SatellitesDialog.cpp index b52f9aacb8fc9..89e8f64584915 100644 --- a/plugins/Satellites/src/gui/SatellitesDialog.cpp +++ b/plugins/Satellites/src/gui/SatellitesDialog.cpp @@ -155,7 +155,8 @@ void SatellitesDialog::createDialogContent() ui->addSourceButton->setFixedSize(bs); ui->deleteSourceButton->setFixedSize(bs); ui->editSourceButton->setFixedSize(bs); - ui->saveSourceButton->setFixedSize(bs); + ui->saveSourceButton->setFixedSize(bs); + ui->customFilterButton->setFixedSize(bs); // Settings tab / updates group // These controls are refreshed by updateSettingsPage(), which in @@ -1077,9 +1078,9 @@ void SatellitesDialog::populateFilterMenu() // TRANSLATORS: HGEO = High geosynchronous orbit ui->groupFilterCombo->insertItem(0, q_("[HGSO satellites]"), QVariant("[HGSO]")); ui->groupFilterCombo->insertItem(0, q_("[outdated TLE]"), QVariant("[outdatedTLE]")); - ui->groupFilterCombo->insertItem(0, q_("[all user defined]"), QVariant("[userdefined]")); - ui->groupFilterCombo->insertItem(0, q_("[all]"), QVariant("all")); ui->groupFilterCombo->insertItem(0, q_("[custom filter]"), QVariant("[custom]")); + ui->groupFilterCombo->insertItem(0, q_("[all user defined]"), QVariant("[userdefined]")); + ui->groupFilterCombo->insertItem(0, q_("[all]"), QVariant("all")); // Restore current selection index = 0; From f4d151cbfe567f39e3f398535dbd78054fef4636 Mon Sep 17 00:00:00 2001 From: Georg Zotti Date: Mon, 23 May 2022 16:42:43 +0200 Subject: [PATCH 6/7] SUG fixes --- guide/plg_catalogs.tex | 91 ++++++++++++++++++++++++++++-------------- 1 file changed, 60 insertions(+), 31 deletions(-) diff --git a/guide/plg_catalogs.tex b/guide/plg_catalogs.tex index f142ce9cf4048..2e22b9abca915 100644 --- a/guide/plg_catalogs.tex +++ b/guide/plg_catalogs.tex @@ -1239,7 +1239,7 @@ \section{Satellites Plugin} To calculate satellite positions, the plugin uses an implementation of the SGP4/SDP4 algorithms (J.L. Canales' \program{gsat} library), using as its input data in NORAD's two-line element set -(TLE\footnote{TLE: \url{https://en.wikipedia.org/wiki/Two-line_element_set}}) +(\indexterm[TLE, two-line element]{TLE}\footnote{TLE: \url{https://en.wikipedia.org/wiki/Two-line_element_set}}) format. Lists with TLEs for hundreds of satellites are available online and are regularly updated. The plugin downloads the lists prepared by \url{https://celestrak.com} to keep itself up-to-date, but the users can @@ -1281,32 +1281,44 @@ \subsection{Satellite Properties} \end{figure} \begin{description} -\item[Name] Each satellite has a name. It's displayed as a label of the satellite hint and in the list of satellites. Names are not unique though, so they are used only -for presentation purposes. - -\item[Catalog number] In the \emph{Satellite Catalog} satellites are uniquely identified by their NORAD number, which is encoded in TLEs. - -\item[I.D. (The International Designator)] In the \emph{Satellite Catalog} satellites are also uniquely identified by their International Designator also known as COSPAR ID, which is encoded in TLEs. - -\item[Standard magnitude] The standard magnitude may be an estimate based on the mean cross- -sectional area derived from its dimensions, or it may be a mean value derived from visual observations.\footnote{The standard magnitude and RCS data was obtained from Mike McCants' quicksat catalog with his permissions.} - -\item[RCS] The Radar Cross Section is a median value derived from the last several years of values in the Satellite Situation Report. The units of the RCS are square meters. - -\item[Perigee] The perigee is the nearest point respectively of a satellite's direct orbit around the Earth. The units of perigee are kilometers. - -\item[Apogee] The apogee is the farthest point respectively of a satellite's direct orbit around the Earth. The units of apogee are kilometers. - -\item[Period] The orbital period is simply how long an orbiting satellite takes to complete one orbit. The units of period are minutes. - -\item[Displayed] In the \emph{Satellite Catalog} satellites this property whether the selected satellite should be displayed on the sky. - -\item[Orbit] In the \emph{Satellite Catalog} satellites this property whether the orbit of the selected satellite should be displayed on the sky. - -\item[Do not update] In the \emph{Satellite Catalog} satellites this property mark satellites, which TLE should not be updated. - -\item[Description] The used defined notes to the selected satellite. - +\item[Name] Each satellite has a name. It's displayed as a label of + the satellite hint and in the list of satellites. Names are not + unique though, so they are used only for presentation purposes. +\item[Catalog number] In the \emph{Satellite Catalog} satellites are + uniquely identified by their NORAD number, which is encoded in + \indexterm[TLE, two-line element]{TLE}s. +\item[I.D. (The International Designator)] In the \emph{Satellite + Catalog} satellites are also uniquely identified by their + International Designator also known as \indexterm[COSPAR ID (satellite ID)]{COSPAR ID}, which is encoded + in TLEs. +\item[Standard magnitude] The \indexterm[standard magnitude + (satellites)]{standard magnitude} may be an estimate based on the + mean cross-sectional area derived from its dimensions, or it may be + a mean value derived from visual observations.\footnote{The standard + magnitude and RCS data were obtained from Mike McCants' quicksat + catalog with his permissions.} +\item[RCS] The \indexterm[RCS, Radar Cross Section]{Radar Cross + Section} is a median value derived from the last several years of + values in the Satellite Situation Report. The units of the RCS are + square meters. +\item[Perigee] The \indexterm{perigee} is the nearest point respectively of a + satellite's direct orbit around the Earth. The unit of perigee is + kilometers. +\item[Apogee] The \indexterm{apogee} is the farthest point + respectively of a satellite's direct orbit around the Earth. The + unit of apogee is kilometers. +\item[Period] The orbital period is simply how long an orbiting + satellite takes to complete one orbit. The unit of period is + minutes. +\item[Displayed] In the \emph{Satellite Catalog} tab this property + controls whether the selected satellite should be displayed on the + sky. +\item[Orbit] In the \emph{Satellite Catalog} tab this property + controls whether the orbit of the selected satellite should be + displayed in the sky. +\item[Do not update] In the \emph{Satellite Catalog} tab this property + marks satellites for which TLE should not be updated. +\item[Description] The user-defined notes for the selected satellite. \item[Groups] A satellite can belong to one or more groups such as ``amateur'', ``geostationary'' or ``navigation''. They have no other function but @@ -1317,14 +1329,25 @@ \subsection{Satellite Properties} By convention, group names are in lowercase. The GUI translates some of the groups used in the default catalog. -The group names also using as an additional filters for filtering the satellites (see UI elements on the left side). +The group names also can be used as an additional filters for the satellites (see UI elements on the left side). -\item[TLE set] The raw TLE data of selected satellite. A two-line element set (TLE) is a data format encoding a list of orbital elements of an Earth-orbiting object for a given point in time, the epoch. Using a suitable prediction formula, the state (position and velocity) at any point in the past or future can be estimated to some accuracy. +\item[TLE set] The raw TLE data of selected satellite. A two-line + element set (TLE) is a data format encoding a list of orbital + elements of an Earth-orbiting object for a given point in time, the + epoch. Using a suitable prediction model, the state (position and + velocity) at any point in the past or future can be estimated to + some accuracy. \item[Epoch of the TLE] Human-readable epoch of current set of the TLE. \end{description} -On the left side of this tab you may see tools for filtering the satellites. In upper side UI has drop-down list with many predefined filters. Some filters are connected to user defined groups to quick get a list of satellites in some group, such as all satellites from group ``navigation''. Some filters are connected to orbital properties of satellites, such selecting the filter ``[LEO]'' will show all low-orbital satellites. +On the left side of this tab you may see tools for filtering the +satellites. The upper part shows a drop-down list with many predefined +filters. Some filters are connected to user defined groups to quickly +get a list of satellites in some group, such as all satellites from +group ``navigation''. Some filters are connected to orbital properties +of satellites, e.g., selecting the filter ``[LEO]'' will show all +low-orbital satellites. \begin{figure}[ht] \centering\includegraphics[width=0.6\textwidth]{satellites_plugin_filters.jpg} @@ -1332,7 +1355,13 @@ \subsection{Satellite Properties} \label{fig:plugins:Satellites:Configuration:SatellitesFilter} \end{figure} -You can display \newFeature{0.22.2} list of satellites by specific collection of they properties, when filter ``[custom filter]'' will be selected (see \ref{fig:plugins:Satellites:Configuration:SatellitesFilter}). The settings of this filter available through button \guibutton{0.6}{uibtSettings.png}, wich located at right of drop-down list. +You can display \newFeature{0.22.2} a list of satellites by specific +selection of their properties, when filter ``[custom filter]'' has +been selected (see +\ref{fig:plugins:Satellites:Configuration:SatellitesFilter}). The +settings of this filter available through button +\guibutton{0.6}{uibtSettings.png}, which is located at the right of +the drop-down list. \subsection{Satellite Catalog} \label{sec:plugins:Satellites:catalog} From 41180509b02f0240593dfcefbdbad2530e85af8f Mon Sep 17 00:00:00 2001 From: "Alexander V. Wolf" Date: Mon, 23 May 2022 22:31:09 +0700 Subject: [PATCH 7/7] fix docs --- plugins/Satellites/src/Satellites.hpp | 38 +++++++++++++-------------- 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/plugins/Satellites/src/Satellites.hpp b/plugins/Satellites/src/Satellites.hpp index 49672388a153f..d47815c5e8149 100644 --- a/plugins/Satellites/src/Satellites.hpp +++ b/plugins/Satellites/src/Satellites.hpp @@ -616,97 +616,97 @@ public slots: void saveCatalog(QString path=QString()); //! Set whether custom filter 'known standard magnitude' enabled. - //! Emits customFilterChanged() if the value changes. + //! Emits customFilterChanged() void setFlagCFKnownStdMagnitude(bool b); bool getFlagCFKnownStdMagnitude() { return Satellite::flagCFKnownStdMagnitude; } //! Set whether custom filter 'apogee' enabled. - //! Emits customFilterChanged() if the value changes. + //! Emits customFilterChanged() void setFlagCFApogee(bool b); bool getFlagCFApogee() { return Satellite::flagCFApogee; } //! Set whether custom filter 'apogee' maximum value (in kilometers). - //! Emits customFilterChanged() if the value changes. + //! Emits customFilterChanged() void setMaxCFApogee(double v); double getMaxCFApogee() { return Satellite::maxCFApogee; } //! Set whether custom filter 'apogee' minimum value (in kilometers). - //! Emits customFilterChanged() if the value changes. + //! Emits customFilterChanged() void setMinCFApogee(double v); double getMinCFApogee() { return Satellite::minCFApogee; } //! Set whether custom filter 'perigee' enabled. - //! Emits customFilterChanged() if the value changes. + //! Emits customFilterChanged() void setFlagCFPerigee(bool b); bool getFlagCFPerigee() { return Satellite::flagCFPerigee; } //! Set whether custom filter 'perigee' maximum value (in kilometers). - //! Emits customFilterChanged() if the value changes. + //! Emits customFilterChanged() void setMaxCFPerigee(double v); double getMaxCFPerigee() { return Satellite::maxCFPerigee; } //! Set whether custom filter 'perigee' minimum value (in kilometers). - //! Emits customFilterChanged() if the value changes. + //! Emits customFilterChanged() void setMinCFPerigee(double v); double getMinCFPerigee() { return Satellite::minCFPerigee; } //! Set whether custom filter 'eccentricity' enabled. - //! Emits customFilterChanged() if the value changes. + //! Emits customFilterChanged() void setFlagCFEccentricity(bool b); bool getFlagCFEccentricity() { return Satellite::flagCFEccentricity; } //! Set whether custom filter 'eccentricity' maximum value. - //! Emits customFilterChanged() if the value changes. + //! Emits customFilterChanged() void setMaxCFEccentricity(double v); double getMaxCFEccentricity() { return Satellite::maxCFEccentricity; } //! Set whether custom filter 'eccentricity' minimum value. - //! Emits customFilterChanged() if the value changes. + //! Emits customFilterChanged() void setMinCFEccentricity(double v); double getMinCFEccentricity() { return Satellite::minCFEccentricity; } //! Set whether custom filter 'period' enabled. - //! Emits customFilterChanged() if the value changes. + //! Emits customFilterChanged() void setFlagCFPeriod(bool b); bool getFlagCFPeriod() { return Satellite::flagCFPeriod; } //! Set whether custom filter 'period' maximum value (in minutes). - //! Emits customFilterChanged() if the value changes. + //! Emits customFilterChanged() void setMaxCFPeriod(double v); double getMaxCFPeriod() { return Satellite::maxCFPeriod; } //! Set whether custom filter 'period' minimum value (in minutes). - //! Emits customFilterChanged() if the value changes. + //! Emits customFilterChanged() void setMinCFPeriod(double v); double getMinCFPeriod() { return Satellite::minCFPeriod; } //! Set whether custom filter 'inclination' enabled. - //! Emits customFilterChanged() if the value changes. + //! Emits customFilterChanged() void setFlagCFInclination(bool b); bool getFlagCFInclination() { return Satellite::flagCFInclination; } //! Set whether custom filter 'inclination' maximum value (in degrees). - //! Emits customFilterChanged() if the value changes. + //! Emits customFilterChanged() void setMaxCFInclination(double v); double getMaxCFInclination() { return Satellite::maxCFInclination; } //! Set whether custom filter 'inclination' minimum value (in degrees). - //! Emits customFilterChanged() if the value changes. + //! Emits customFilterChanged() void setMinCFInclination(double v); double getMinCFInclination() { return Satellite::minCFInclination; } //! Set whether custom filter 'rcs' enabled. - //! Emits customFilterChanged() if the value changes. + //! Emits customFilterChanged() void setFlagCFRCS(bool b); bool getFlagCFRCS() { return Satellite::flagCFRCS; } //! Set whether custom filter 'rcs' maximum value (in square meters). - //! Emits customFilterChanged() if the value changes. + //! Emits customFilterChanged() void setMaxCFRCS(double v); double getMaxCFRCS() { return Satellite::maxCFRCS; } //! Set whether custom filter 'rcs' minimum value (in square meters). - //! Emits customFilterChanged() if the value changes. + //! Emits customFilterChanged() void setMinCFRCS(double v); double getMinCFRCS() { return Satellite::minCFRCS; }