You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
TwoLaserHead-PushJig/LaiPuLaser/Laser.h

37 lines
1.4 KiB
C++

#pragma once
#include "module.h"
#include "CameraHawkvis.h"
//激光
class CLaser :public CModule
{
public:
CLaser(void);
~CLaser(void);
virtual MODULE GetModuleType(){return _LASER_PROP;};
virtual CMFCPropertyGridProperty *CreatGridProperty();
virtual void WriteWorkFileExt(vector<CLab> &LabVec);
virtual void ReadWorkFile(CLabVecRang &LabVecRang);
Dbxy GetCoord(){return m_LaserCoord+gCameraHawkvis->m_Coord;};
void SetCoord(Dbxy pt){m_LaserCoord = pt;};
int GetOpenDelay(){return m_OpenDelay;};
void SetOpenDelay(int n){m_OpenDelay = n;};
double GetBaseThickness(){return m_BaseThickness;};
void SetBaseThickness(double n){m_BaseThickness = n;};
double GetFocalAdjustVal();
double GetWorkThickness(){return m_WorkThickness;};
void SetWorkThickness(double n){m_WorkThickness = n;};
void AddAdjustFocalCmd();
void OnOpen();
void OnClose();
private:
Dbxy m_LaserCoord;//激光垂直点在平台的坐标(PLATFORM_COORD)
int m_OpenDelay;//开关后延时 ms
//激光焦距管理,Z 轴有电机的情况使用
double m_BaseThickness;//用来调试焦距的基准产品厚度mm
double m_WorkThickness;//当前加工的产品厚度mm
double m_MaxThickness;//最大产品厚度mm
double m_MinThickness;//最小产品厚度mm
};
extern CLaser *gLaser;