QGroundControl
Ground Control Station for MAVLink Drones
Loading...
Searching...
No Matches
TrajectoryPoints.h
Go to the documentation of this file.
1#pragma once
2
3#include <QtCore/QObject>
4#include <QtCore/QVariantList>
5#include <QtPositioning/QGeoCoordinate>
6#include <QtQmlIntegration/QtQmlIntegration>
7
8class Vehicle;
9
10class TrajectoryPoints : public QObject
11{
12 Q_OBJECT
13 QML_ELEMENT
14 QML_UNCREATABLE("")
15public:
16 TrajectoryPoints(Vehicle* vehicle, QObject* parent = nullptr);
17
18 Q_INVOKABLE QVariantList list(void) const { return _points; }
19
20 void start (void);
21 void stop (void);
22
23public slots:
24 void clear (void);
25
26signals:
27 void pointAdded (QGeoCoordinate coordinate);
28 void updateLastPoint(QGeoCoordinate coordinate);
29 void pointsCleared (void);
30
31private slots:
32 void _vehicleCoordinateChanged(QGeoCoordinate coordinate);
33
34private:
35 Vehicle* _vehicle;
36 QVariantList _points;
37 QGeoCoordinate _lastPoint;
38 double _lastAzimuth;
39
40 static constexpr double _distanceTolerance = 2.0;
41 static constexpr double _azimuthTolerance = 1.5;
42};
void pointAdded(QGeoCoordinate coordinate)
void updateLastPoint(QGeoCoordinate coordinate)
void pointsCleared(void)
QVariantList list(void) const