Files
EJM_Display/Pages/P301_PumpPage.h
2025-10-10 17:44:10 +08:00

55 lines
1.5 KiB
C++

#ifndef P301_PUMPPAGE_H
#define P301_PUMPPAGE_H
#include <QWidget>
#include <QProgressBar>
#include <PublicFunctions/CurvePlotWidget.h>
#include <PublicFunctions/ObjLoader.h>
#include <QLCDNumber>
namespace Ui {
class P301_PumpPage;
}
class P301_PumpPage : public QWidget
{
Q_OBJECT
public:
explicit P301_PumpPage(QWidget *parent = nullptr);
~P301_PumpPage();
void WinInit();
void SetProgressBar(QProgressBar *PB,const uint16_t Value,const uint8_t ColorIndex,const QStringList Color = {});
void SetProgressBar(QProgressBar *PB, QLCDNumber *LCD, const QString NodeGroup,QString NodeLCD,const QStringList Color = {});
void SetPos(const float Zoom,QVector3D Move,const QVector3D Pos);
private slots:
void UIRefreshTimeOut();
void TrailRefreshTimeOut();
void Show3D();
void RotateDev();
signals:
void preprocessFinished(QVector3D center, float radius);
void loadModelRequest(const QString& devName, const QString& filePath, QVector3D center, float radius);
private:
Ui::P301_PumpPage *ui;
QStringList slOilTemp;
QStringList slOilLevel;
QStringList PercentageText;
QStringList TrueColor;
QStringList FalseColor;
QString DevName3D = "";
uint16_t mAngle = 0;
ObjLoader *mObjLoader;
QThread* m_workerThread;
ObjLoader* m_workerLoader;
QVector3D m_modelCenter;
float m_modelRadius;
QString m_currentDevName;
QString m_currentFilePath;
QVector3D m_currentPosition;
};
#endif // P301_PUMPPAGE_H