QGroundControl
Ground Control Station for MAVLink Drones
Loading...
Searching...
No Matches
Viewer3DGeoCoordinateType.h
Go to the documentation of this file.
1#pragma once
2
3#include <QtCore/QLoggingCategory>
4#include <QtCore/QObject>
5#include <QtGui/QVector3D>
6#include <QtPositioning/QGeoCoordinate>
7#include <QtQmlIntegration/QtQmlIntegration>
8
9Q_DECLARE_LOGGING_CATEGORY(Viewer3DGeoCoordinateTypeLog)
10
11class Viewer3DGeoCoordinateType : public QObject
12{
13 Q_OBJECT
14 QML_ELEMENT
15 Q_PROPERTY(QGeoCoordinate gpsRef READ gpsRef WRITE setGpsRef NOTIFY gpsRefChanged)
16 Q_PROPERTY(QGeoCoordinate coordinate READ coordinate WRITE setCoordinate NOTIFY coordinateChanged)
17 Q_PROPERTY(QVector3D localCoordinate READ localCoordinate NOTIFY localCoordinateChanged)
18
19public:
20 explicit Viewer3DGeoCoordinateType(QObject *parent = nullptr) : QObject(parent) {}
21
22 QGeoCoordinate gpsRef() const { return _gpsRef; }
23 void setGpsRef(const QGeoCoordinate &newGpsRef);
24
25 QGeoCoordinate coordinate() const { return _coordinate; }
26 void setCoordinate(const QGeoCoordinate &newCoordinate);
27
28 QVector3D localCoordinate() const { return _localCoordinate; }
29
30signals:
34
35private:
36 void _gpsToLocal();
37
38 QGeoCoordinate _gpsRef;
39 QGeoCoordinate _coordinate;
40 QVector3D _localCoordinate;
41};
Q_DECLARE_LOGGING_CATEGORY(AndroidSerialLog)