Qt实现动态雷达扫描图
话不多说,先看效果图
在看代码
CRadarAnimation.h
#ifndef CRADARANIMATION_H
#define CRADARANIMATION_H
#include <QObject>
#include <QQuickPaintedItem>
#include <QTimer>
#include <QPainter>
class CRadarAnimation : public QQuickPaintedItem
{
Q_OBJECT
public:
CRadarAnimation();
virtual ~CRadarAnimation();
protected slots:
virtual void paint( QPainter *painter ) override;
void onTimerTimeout();
private:
QRectF maxInsideSquareRect();
void drawCircle( QPainter *painter );
void drawOutLineCircle( QPainter *painter, const double diameter );
void drawPie( QPainter *painter );
private:
// int m_1kmPixels =
QTimer m_timer;
uint16_t m_rotateCount = 0;
};
#endif // CRADARANIMATION