2025-08-20 23:06:28 +08:00
|
|
|
#ifndef P401_CUTTINGPAGE_H
|
|
|
|
|
#define P401_CUTTINGPAGE_H
|
|
|
|
|
|
|
|
|
|
#include <QWidget>
|
2025-09-30 17:42:22 +08:00
|
|
|
#include <QProgressBar>
|
|
|
|
|
#include <PublicFunctions/CurvePlotWidget.h>
|
|
|
|
|
#include <PublicFunctions/ObjLoader.h>
|
2025-08-20 23:06:28 +08:00
|
|
|
namespace Ui {
|
|
|
|
|
class P401_CuttingPage;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
class P401_CuttingPage : public QWidget
|
|
|
|
|
{
|
|
|
|
|
Q_OBJECT
|
|
|
|
|
|
|
|
|
|
public:
|
|
|
|
|
explicit P401_CuttingPage(QWidget *parent = nullptr);
|
|
|
|
|
~P401_CuttingPage();
|
2025-09-30 17:42:22 +08:00
|
|
|
void WinInit();
|
|
|
|
|
void SetProgressBar(QProgressBar *PB,uint16_t Value,uint8_t ColorIndex,QStringList Color);
|
|
|
|
|
void SetPos(float Zoom,QVector3D Move,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);
|
2025-08-20 23:06:28 +08:00
|
|
|
|
|
|
|
|
private:
|
|
|
|
|
Ui::P401_CuttingPage *ui;
|
2025-09-30 17:42:22 +08:00
|
|
|
|
|
|
|
|
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;
|
2025-08-20 23:06:28 +08:00
|
|
|
};
|
|
|
|
|
|
|
|
|
|
#endif // P401_CUTTINGPAGE_H
|