QGroundControl
Ground Control Station for MAVLink Drones
Loading...
Searching...
No Matches
GeometryImage.h
Go to the documentation of this file.
1#pragma once
2
3#include "QGCPalette.h"
4#include "Common.h"
5
6#include <QtCore/QObject>
7#include <QtCore/QString>
8#include <QtQuick/QQuickImageProvider>
9#include <QtGui/QPainter>
10
11
12namespace GeometryImage {
13
17class VehicleGeometryImageProvider : public QQuickImageProvider
18{
19public:
20
27
28 void drawAxisIndicator(QPainter& p, const QPointF& origin, float fontSize, const QColor& color);
29
30 QPixmap requestPixmap(const QString& id, QSize* size, const QSize& requestedSize) override;
31
33
34 int getHighlightedMotorIndexAtPos(const QSizeF& displaySize, const QPointF& position);
35
36 QList<ActuatorGeometry>& actuators() { return _actuators; }
37
38 int numMotors() const;
39
40private:
43
44 QList<ActuatorGeometry> _actuators{};
45
46 QSize _imageSize;
47 QList<ImagePosition> _actuatorImagePositions{};
48 QGCPalette _palette;
49};
50
51} // namespace GeometryImage
QPixmap requestPixmap(const QString &id, QSize *size, const QSize &requestedSize) override
void drawAxisIndicator(QPainter &p, const QPointF &origin, float fontSize, const QColor &color)
static VehicleGeometryImageProvider * instance()
QList< ActuatorGeometry > & actuators()
int getHighlightedMotorIndexAtPos(const QSizeF &displaySize, const QPointF &position)