From 0cdd04cc9779992bfa7fe1fdd9fffa5a96c02259 Mon Sep 17 00:00:00 2001 From: Valentin Platzgummer Date: Thu, 9 Jan 2020 09:28:15 +0100 Subject: [PATCH] 321 --- bugs.txt | 1 - issues.txt | 2 - .../optimisation/main.cpp | 29 +++++++++++++++ .../optimisation/main.qml | 32 ++++++++++++++++ .../optimisation/optimisation.pro | 37 +++++++++++++++++++ .../optimisation/qml.qrc | 5 +++ src/Wima/CircularSurveyComplexItem.cc | 11 +++--- 7 files changed, 109 insertions(+), 8 deletions(-) delete mode 100644 bugs.txt delete mode 100644 issues.txt create mode 100644 microProjects/CircularSurveyOptimisation/optimisation/main.cpp create mode 100644 microProjects/CircularSurveyOptimisation/optimisation/main.qml create mode 100644 microProjects/CircularSurveyOptimisation/optimisation/optimisation.pro create mode 100644 microProjects/CircularSurveyOptimisation/optimisation/qml.qrc diff --git a/bugs.txt b/bugs.txt deleted file mode 100644 index b8960af9f..000000000 --- a/bugs.txt +++ /dev/null @@ -1 +0,0 @@ -error when loading wima file diff --git a/issues.txt b/issues.txt deleted file mode 100644 index 3242bc26f..000000000 --- a/issues.txt +++ /dev/null @@ -1,2 +0,0 @@ -if polygon vertex clicked: remove circle option -can't switch between polygons on first insert diff --git a/microProjects/CircularSurveyOptimisation/optimisation/main.cpp b/microProjects/CircularSurveyOptimisation/optimisation/main.cpp new file mode 100644 index 000000000..69d2cfa1f --- /dev/null +++ b/microProjects/CircularSurveyOptimisation/optimisation/main.cpp @@ -0,0 +1,29 @@ +#include +#include +#include "CircularSurveyComplexItem.h" +#include +#include + +int main(int argc, char *argv[]) +{ + QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling); + + QGuiApplication app(argc, argv); + + QQmlApplicationEngine engine; + + CircularSurveyComplexItem survey; + + const QUrl url(QStringLiteral("qrc:/main.qml")); + QObject::connect(&engine, &QQmlApplicationEngine::objectCreated, + &app, [url](QObject *obj, const QUrl &objUrl) { + if (!obj && url == objUrl) + QCoreApplication::exit(-1); + + }, Qt::QueuedConnection); + + engine.rootContext()->setContextProperty("survey", &survey); + engine.load(url); + + return app.exec(); +} diff --git a/microProjects/CircularSurveyOptimisation/optimisation/main.qml b/microProjects/CircularSurveyOptimisation/optimisation/main.qml new file mode 100644 index 000000000..5a551210c --- /dev/null +++ b/microProjects/CircularSurveyOptimisation/optimisation/main.qml @@ -0,0 +1,32 @@ +import QtQuick 2.11 +import QtQuick.Window 2.11 +import QtLocation 5.5 + +import "../../../src/WimaView" + +Window { + visible: true + width: 640 + height: 480 + title: qsTr("Hello World") + + Map{ + id: map + anchors.fill: parent + + plugin: Plugin { + name: "osm" // "mapboxgl", "esri", ... + // specify plugin parameters if necessary + // PluginParameter { + // name: + // value: + // } + } + Repeater{ + model: survey + SphericalSurveyMapVisual{ + map: map + } + } + } +} diff --git a/microProjects/CircularSurveyOptimisation/optimisation/optimisation.pro b/microProjects/CircularSurveyOptimisation/optimisation/optimisation.pro new file mode 100644 index 000000000..bcf4de3d9 --- /dev/null +++ b/microProjects/CircularSurveyOptimisation/optimisation/optimisation.pro @@ -0,0 +1,37 @@ +QT += quick +QT += positioning + +CONFIG += c++11 + +# The following define makes your compiler emit warnings if you use +# any Qt feature that has been marked deprecated (the exact warnings +# depend on your compiler). Refer to the documentation for the +# deprecated API to know how to port your code away from it. +DEFINES += QT_DEPRECATED_WARNINGS + +# You can also make your code fail to compile if it uses deprecated APIs. +# In order to do so, uncomment the following line. +# You can also select to disable deprecated APIs only up to a certain version of Qt. +#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0 + +SOURCES += \ + main.cpp + +RESOURCES += qml.qrc + +# Additional import path used to resolve QML modules in Qt Creator's code model +QML_IMPORT_PATH = $$PWD/../../../src/WimaView + +# Additional import path used to resolve QML modules just for Qt Quick Designer +QML_DESIGNER_IMPORT_PATH = + +# Default rules for deployment. +qnx: target.path = /tmp/$${TARGET}/bin +else: unix:!android: target.path = /opt/$${TARGET}/bin +!isEmpty(target.path): INSTALLS += target + +INCLUDEPATH += $$PWD/../../../src/Wima +INCLUDEPATH += $$PWD/../../../src/MissionManager +INCLUDEPATH += $$PWD/../../../src/comm +INCLUDEPATH += $$PWD/../../../libs/mavlink/include/mavlink/v2.0/ + diff --git a/microProjects/CircularSurveyOptimisation/optimisation/qml.qrc b/microProjects/CircularSurveyOptimisation/optimisation/qml.qrc new file mode 100644 index 000000000..5f6483ac3 --- /dev/null +++ b/microProjects/CircularSurveyOptimisation/optimisation/qml.qrc @@ -0,0 +1,5 @@ + + + main.qml + + diff --git a/src/Wima/CircularSurveyComplexItem.cc b/src/Wima/CircularSurveyComplexItem.cc index 6bc9aab78..2c4a3413a 100644 --- a/src/Wima/CircularSurveyComplexItem.cc +++ b/src/Wima/CircularSurveyComplexItem.cc @@ -365,6 +365,7 @@ void CircularSurveyComplexItem::_rebuildTransectsPhase1() using namespace PolygonCalculus; using namespace PlanimetryCalculus; + // rebuild not necessary? if (!_isInitialized || _referencePointBeingChanged) return; @@ -429,11 +430,11 @@ void CircularSurveyComplexItem::_rebuildTransectsPhase1() // fetch input data - double dalpha = _deltaAlpha.rawValue().toDouble()/180.0*M_PI; // radiants - double dr = _deltaR.rawValue().toDouble(); // meter - double lmin = _transectMinLength.rawValue().toDouble(); - double r_min = dr; // meter - double r_max = (*std::max_element(distances.begin(), distances.end())); // meter + double dalpha = _deltaAlpha.rawValue().toDouble()/180.0*M_PI; // radiants + double dr = _deltaR.rawValue().toDouble(); // meter + double lmin = _transectMinLength.rawValue().toDouble(); + double r_min = dr; // meter + double r_max = (*std::max_element(distances.begin(), distances.end())); // meter QPointF origin(0, 0); IntersectType type; -- 2.22.0