#pragma once
|
|
#include "ModuleStatus.h"
|
#include "CHReviewSetting/AlignCalibrator.h"
|
|
class CCoordCalibrator : public CAlignCalibrator
|
{
|
public:
|
CCoordCalibrator();
|
virtual ~CCoordCalibrator(void);
|
|
void GetTransDirection(int& nDirectionX, int& nDirectionY) const;
|
void TransGlass2Motor(const SCoordInfo* pCoordInfo, double& dPositionX, double& dPositionY) const;
|
void TransMotor2Glass(const SCoordInfo* pCoordInfo, SMotorPosition* pMotorPosition) const;
|
|
void SetARMotorInfo(int nDirX, int nDirY, double dDistX, double dDistY);
|
void TransAOI2Review(const SCoordInfo* pCoordInfo, double dAOIPosX, double dAOIPosY, double& dReviewPosX, double& dReviewPosY) const;
|
void TransReview2AOI(const SCoordInfo* pCoordInfo, double dReviewPosX, double dReviewPosY, double& dAOIPosX, double& dAOIPosY) const;
|
|
void TransMain2Sub(const SCoordInfo* pCoordInfo, double dMainPosX, double dMainPosY, double& dSubPosX, double& dSubPosY) const;
|
void TransSub2Main(const SCoordInfo* pCoordInfo, double dSubPosX, double dSubPosY, double& dMainPosX, double& dMainPosY) const;
|
|
|
|
void ResetAlignResult();
|
void SetRotationInfo(double dMotorPosX, double dMotorPosY, double dGlassPosX, double dGlassPosY, double dDegree);
|
void SetOriginMotorPosition(double dPosX, double dPosY);
|
void SetTransDirection(int nDirectionX, int nDirectionY);
|
|
protected:
|
double m_dRotateCenterX;
|
double m_dRotateCenterY;
|
double m_dRotateDegree;
|
double m_dRotateRadian;
|
|
double m_dOriginMotorX;
|
double m_dOriginMotorY;
|
|
// AOI-Review Axis
|
BOOL m_bUseAOICam;
|
int m_nARDirX; // AOI-Review 사이의 x축 방향
|
int m_nARDirY; // AOI-Review 사이의 y축 방향
|
double m_dARDistX; // AOI-Review 사이의 x 거리 (모터 좌표)
|
double m_dARDistY; // AOI-Review 사이의 y 거리 (모터 좌표)
|
};
|