diff --git a/src/MissionManager/MissionController.cc b/src/MissionManager/MissionController.cc index 59ba9ad9026e113c378348b6bd982c7bd19126d7..613019bc6c2ed2d5076a151c6bf317b0680e50a0 100644 --- a/src/MissionManager/MissionController.cc +++ b/src/MissionManager/MissionController.cc @@ -458,7 +458,9 @@ int MissionController::insertComplexMissionItemFromKMLOrSHP(QString itemName, QS int MissionController::_insertComplexMissionItemWorker(ComplexMissionItem* complexItem, int i) { int sequenceNumber = _nextSequenceNumber(); - bool surveyStyleItem = qobject_cast(complexItem) || qobject_cast(complexItem); + bool surveyStyleItem = qobject_cast(complexItem) + || qobject_cast(complexItem) + || qobject_cast(complexItem); if (surveyStyleItem) { bool rollSupported = false; @@ -511,7 +513,9 @@ void MissionController::removeMissionItem(int index) return; } - bool removeSurveyStyle = _visualItems->value(index) || _visualItems->value(index); + bool removeSurveyStyle = _visualItems->value(index) + || _visualItems->value(index) + || _visualItems->value(index); VisualMissionItem* item = qobject_cast(_visualItems->removeAt(index)); _deinitVisualItem(item); @@ -521,7 +525,9 @@ void MissionController::removeMissionItem(int index) // Determine if the mission still has another survey style item in it bool foundSurvey = false; for (int i=1; i<_visualItems->count(); i++) { - if (_visualItems->value(i) || _visualItems->value(i)) { + if ( _visualItems->value(i) + || _visualItems->value(i) + || _visualItems->value(i)) { foundSurvey = true; break; } diff --git a/src/MissionManager/MissionItem.h b/src/MissionManager/MissionItem.h index fb8cab6d98f18251f3954f377776b34c4c6944be..f8864d9e6e3d2fe4913068d697701cdb659b9ba7 100644 --- a/src/MissionManager/MissionItem.h +++ b/src/MissionManager/MissionItem.h @@ -26,6 +26,7 @@ #include "QmlObjectListModel.h" class SurveyComplexItem; +class CircularSurveyComplexItem; class SimpleMissionItem; class MissionController; #ifdef UNITTEST_BUILD @@ -151,6 +152,7 @@ private: static const char* _jsonParam4Key; friend class SurveyComplexItem; + friend class CircularSurveyComplexItem; friend class SimpleMissionItem; friend class MissionController; #ifdef UNITTEST_BUILD diff --git a/src/PlanView/CircularSurveyItemEditor.qml b/src/PlanView/CircularSurveyItemEditor.qml index 6497b770d5207436d4ef90a1a56d93f3cf0dacd9..629ba4136154183677e805101be62ab4fb48833a 100644 --- a/src/PlanView/CircularSurveyItemEditor.qml +++ b/src/PlanView/CircularSurveyItemEditor.qml @@ -79,12 +79,12 @@ Rectangle { //onUpdated: rSlider.value = missionItem.deltaR.value } - QGCLabel { text: qsTr("Delta R") } - FactTextField { - fact: missionItem.deltaR - Layout.fillWidth: true - //onUpdated: rSlider.value = missionItem.deltaR.value - } +// QGCLabel { text: qsTr("Delta R") } +// FactTextField { +// fact: missionItem.deltaR +// Layout.fillWidth: true +// //onUpdated: rSlider.value = missionItem.deltaR.value +// } /*QGCSlider { id: rSlider @@ -110,7 +110,7 @@ Rectangle { QGCSlider { id: angleSlider minimumValue: 0.3 - maximumValue: 5 + maximumValue: 10 stepSize: 0.1 tickmarksEnabled: false Layout.fillWidth: true diff --git a/src/Wima/CircularSurvey.SettingsGroup.json b/src/Wima/CircularSurvey.SettingsGroup.json index 77d0e5039a552708cdd85b858a05d6176b123d39..eb2c2d9c9974423fcbfd1b70bd0a4a926643148c 100644 --- a/src/Wima/CircularSurvey.SettingsGroup.json +++ b/src/Wima/CircularSurvey.SettingsGroup.json @@ -6,7 +6,7 @@ "units": "m", "min": 0.3, "decimalPlaces": 1, - "defaultValue": 20 + "defaultValue": 20.0 }, { "name": "DeltaAlpha", @@ -15,6 +15,6 @@ "units": "Deg", "min": 0.3, "decimalPlaces": 1, - "defaultValue": 5 + "defaultValue": 5.0 } ] diff --git a/src/Wima/CircularSurveyComplexItem.cc b/src/Wima/CircularSurveyComplexItem.cc index f1856e8fa6be0904c371373a576d859518857b35..6d7a4f3f705380b9a589c6ba4ba56fbb2e0a1d9c 100644 --- a/src/Wima/CircularSurveyComplexItem.cc +++ b/src/Wima/CircularSurveyComplexItem.cc @@ -22,7 +22,6 @@ CircularSurveyComplexItem::CircularSurveyComplexItem(Vehicle *vehicle, bool flyV , _autoGenerated (false) { _editorQml = "qrc:/qml/CircularSurveyItemEditor.qml"; - connect(&_deltaR, &Fact::valueChanged, this, &CircularSurveyComplexItem::_setDirty); connect(&_deltaAlpha, &Fact::valueChanged, this, &CircularSurveyComplexItem::_setDirty); connect(this, &CircularSurveyComplexItem::refPointChanged, this, &CircularSurveyComplexItem::_setDirty); diff --git a/src/Wima/SphericalSurveyComplexItem.cc b/src/Wima/SphericalSurveyComplexItem.cc deleted file mode 100644 index 1454a53f0cc313ff33234b55a0377ff842156644..0000000000000000000000000000000000000000 --- a/src/Wima/SphericalSurveyComplexItem.cc +++ /dev/null @@ -1,72 +0,0 @@ -#include "CircularSurveyComplexItem.h" - - -const char* CircularSurveyComplexItem::settingsGroup = "Survey"; - -CircularSurveyComplexItem::CircularSurveyComplexItem(Vehicle *vehicle, bool flyView, const QString &kmlOrShpFile, QObject *parent) - : TransectStyleComplexItem (vehicle, flyView, settingsGroup, parent) -{ - -} - -bool CircularSurveyComplexItem::load(const QJsonObject &complexObject, int sequenceNumber, QString &errorString) -{ - return TransectStyleComplexItem::load(complexObject, sequenceNumber, errorString); -} - -void CircularSurveyComplexItem::save(QJsonArray &planItems) -{ - TransectStyleComplexItem::save(planItems); -} - -void CircularSurveyComplexItem::appendMissionItems(QList &items, QObject *missionItemParent) -{ - -} - -void CircularSurveyComplexItem::applyNewAltitude(double newAltitude) -{ - -} - -double CircularSurveyComplexItem::timeBetweenShots() -{ - return 1; -} - -bool CircularSurveyComplexItem::readyForSave() const -{ - return false; -} - -double CircularSurveyComplexItem::additionalTimeDelay() const -{ - return 0; -} - -void CircularSurveyComplexItem::_rebuildTransectsPhase1() -{ - -} - -void CircularSurveyComplexItem::_recalcComplexDistance() -{ - -} - -void CircularSurveyComplexItem::_recalcCameraShots() -{ - -} - -/*! - \class CircularSurveyComplexItem - \inmodule Wima - - \brief The \c CircularSurveyComplexItem class provides a survey mission item with circular transects around a point of interest. - - CircularSurveyComplexItem class provides a survey mission item with circular transects around a point of interest. Within the - \c Wima module it's used to scan a defined area with constant angle (circular transects) to the base station (point of interest). - - \sa WimaArea -*/ diff --git a/src/Wima/SphericalSurveyComplexItem.h b/src/Wima/SphericalSurveyComplexItem.h deleted file mode 100644 index 15f07f2f4d37fd55b9a959560d1c6eda2f2199dd..0000000000000000000000000000000000000000 --- a/src/Wima/SphericalSurveyComplexItem.h +++ /dev/null @@ -1,43 +0,0 @@ -# pragma once - -#include "TransectStyleComplexItem.h" - - -class CircularSurveyComplexItem :public TransectStyleComplexItem -{ - Q_OBJECT -public: - /// @param vehicle Vehicle which this is being contructed for - /// @param flyView true: Created for use in the Fly View, false: Created for use in the Plan View - /// @param kmlOrShpFile Polygon comes from this file, empty for default polygon - CircularSurveyComplexItem(Vehicle* vehicle, bool flyView, const QString& kmlOrShpFile, QObject* parent); - - // Overrides from ComplexMissionItem - bool load (const QJsonObject& complexObject, int sequenceNumber, QString& errorString) final; - QString mapVisualQML (void) const final { return QStringLiteral("SpericalSurveyMapVisual.qml"); } - - // Overrides from TransectStyleComplexItem - void save (QJsonArray& planItems) final; - bool specifiesCoordinate (void) const final { return true; } - void appendMissionItems (QList& items, QObject* missionItemParent) final; - void applyNewAltitude (double newAltitude) final; - double timeBetweenShots (void) final; - - // Overrides from VisualMissionionItem - QString commandDescription (void) const final { return tr("Spherical Survey"); } - QString commandName (void) const final { return tr("SphericalSurvey"); } - QString abbreviation (void) const final { return tr("Sph.S"); } - bool readyForSave (void) const final; - double additionalTimeDelay (void) const final; - - static const char* settingsGroup; - -private slots: - // Overrides from TransectStyleComplexItem - void _rebuildTransectsPhase1 (void) final; - void _recalcComplexDistance (void) final; - void _recalcCameraShots (void) final; -}; - - - diff --git a/src/WimaView/WimaView.qml b/src/WimaView/WimaView.qml index c98e961ca47753d9d3659d8034d668b6a647ea6d..89f4a9de4d3e02ffea4ceab7b96406d1eb031434 100644 --- a/src/WimaView/WimaView.qml +++ b/src/WimaView/WimaView.qml @@ -139,6 +139,19 @@ QGCView { } } + Component { + id: applyNewAltitude + + QGCViewMessage { + message: qsTr("You have changed the default altitude for mission items. Would you like to apply that altitude to all the items in the current mission?") + + function accept() { + hideDialog() + _missionController.applyDefaultMissionAltitude() + } + } + } + Component { id: activeMissionUploadDialogComponent