#ifndef P401_CUTTINGPAGE_H #define P401_CUTTINGPAGE_H #include #include #include #include #include namespace Ui { class P401_CuttingPage; } class P401_CuttingPage : public QWidget { Q_OBJECT public: explicit P401_CuttingPage(QWidget *parent = nullptr); ~P401_CuttingPage(); 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::P401_CuttingPage *ui; 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 // P401_CUTTINGPAGE_H