2026-08-04 14:23:07 +08:00
|
|
|
|
#ifndef DIALOGALGOARG_H
|
|
|
|
|
|
#define DIALOGALGOARG_H
|
|
|
|
|
|
|
|
|
|
|
|
#include <QWidget>
|
|
|
|
|
|
#include <QDialog>
|
|
|
|
|
|
#include <QString>
|
|
|
|
|
|
#include "ConfigManager.h"
|
|
|
|
|
|
|
2026-09-19 09:44:46 +08:00
|
|
|
|
class HandEyeCalibWidget;
|
2026-08-04 14:23:07 +08:00
|
|
|
|
class ToolExtrinsicWidget;
|
|
|
|
|
|
class NetworkConfigWidget;
|
|
|
|
|
|
|
|
|
|
|
|
namespace Ui {
|
|
|
|
|
|
class DialogAlgoarg;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
class DialogAlgoarg : public QDialog
|
|
|
|
|
|
{
|
|
|
|
|
|
Q_OBJECT
|
|
|
|
|
|
|
|
|
|
|
|
public:
|
|
|
|
|
|
explicit DialogAlgoarg(ConfigManager* configManager, QWidget *parent = nullptr);
|
|
|
|
|
|
~DialogAlgoarg();
|
|
|
|
|
|
|
|
|
|
|
|
private slots:
|
|
|
|
|
|
void on_btn_camer_ok_clicked();
|
|
|
|
|
|
void on_btn_camer_cancel_clicked();
|
2026-09-19 09:44:46 +08:00
|
|
|
|
void onCalibMatrixLoaded(int cameraIndex, const double* matrix);
|
|
|
|
|
|
void onSaveCalibRequested(int cameraIndex, const double* matrix);
|
2026-08-04 14:23:07 +08:00
|
|
|
|
|
|
|
|
|
|
private:
|
|
|
|
|
|
void LoadConfigToUI();
|
|
|
|
|
|
bool SaveConfigFromUI();
|
|
|
|
|
|
|
|
|
|
|
|
void InitToolExtrinsicTab();
|
2026-09-19 09:44:46 +08:00
|
|
|
|
void InitHandEyeCalibTab();
|
2026-08-04 14:23:07 +08:00
|
|
|
|
void InitNetworkConfigTab();
|
|
|
|
|
|
void LoadModelDetectionParamsToUI(const VrWorkpieceModelParam& modelParam);
|
|
|
|
|
|
bool SaveModelDetectionParamsFromUI(VrWorkpieceModelParam& modelParam);
|
2026-08-17 14:11:44 +08:00
|
|
|
|
void LoadBinDetectionParamsToUI(const VrBinParam& binParam);
|
|
|
|
|
|
bool SaveBinDetectionParamsFromUI(VrBinParam& binParam);
|
|
|
|
|
|
void LoadRotorCoreParamsToUI(const VrRotorCoreParam& rotorParam);
|
|
|
|
|
|
bool SaveRotorCoreParamsFromUI(VrRotorCoreParam& rotorParam);
|
2026-08-04 14:23:07 +08:00
|
|
|
|
void LoadFullImageCaptureParamsToUI(const VrFullImageCaptureParam& captureParam);
|
|
|
|
|
|
bool SaveFullImageCaptureParamsFromUI(VrFullImageCaptureParam& captureParam);
|
|
|
|
|
|
|
|
|
|
|
|
// 网络配置(JSON TCP 端口 + Modbus 寄存器地址)
|
|
|
|
|
|
void LoadPlcRobotServerConfigToUI(const VrPlcRobotServerConfig& config);
|
|
|
|
|
|
bool SavePlcRobotServerConfigFromUI(VrPlcRobotServerConfig& config);
|
|
|
|
|
|
|
2026-09-19 09:44:46 +08:00
|
|
|
|
void LoadHandEyeCalibConfig();
|
2026-08-04 14:23:07 +08:00
|
|
|
|
bool SaveCalibMatrixToConfig(VrHandEyeCalibMatrix& calibMatrix);
|
|
|
|
|
|
|
|
|
|
|
|
private:
|
|
|
|
|
|
Ui::DialogAlgoarg *ui;
|
|
|
|
|
|
ConfigManager* m_pConfigManager;
|
|
|
|
|
|
QString m_configFilePath;
|
2026-09-19 09:44:46 +08:00
|
|
|
|
HandEyeCalibWidget* m_handEyeCalibWidget;
|
2026-08-04 14:23:07 +08:00
|
|
|
|
ToolExtrinsicWidget* m_toolExtrinsicWidget;
|
|
|
|
|
|
NetworkConfigWidget* m_networkConfigWidget = nullptr;
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
#endif // DIALOGALGOARG_H
|