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/WorkCmdCameraCatch.cpp

65 lines
1.6 KiB
C++

#include "StdAfx.h"
#include "WorkCmdCameraCatch.h"
#include "ExceptionMsg.h"
#include "Program_SZ_XL_TrackWorkFlow.h"
#include "CommonFlowMgr.h"
#include "CameraHawkvis.h"
CWorkCmdCameraCatch::CWorkCmdCameraCatch(CCamera &Camera)
:m_Camera(Camera)
{
m_pResultVec = NULL;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
m_pProduct = NULL;
m_bCatchMark3 = false;//<2F>Ƿ<EFBFBD>ץȡ<D7A5><C8A1><EFBFBD><EFBFBD>mark3
m_bAlam = true;//<2F>Ƿ񱨾<C7B7><F1B1A8BE><EFBFBD>ʾ
}
CWorkCmdCameraCatch::~CWorkCmdCameraCatch(void)
{
}
//ץȡ<D7A5><C8A1>λ<EFBFBD><CEBB>
bool CWorkCmdCameraCatch::Excute()
{
Dbxy pt;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if(m_Camera.CatchPtToPlatformcoord(pt)==false)
{
//if(m_pProduct != NULL)//ץȡʧ<C8A1><CAA7>ֱ<EFBFBD>ӱ<EFBFBD><D3B1><EFBFBD>
{
if(m_bAlam)
{
gTrackWorkFlow1.RadAlamOnOff(true);//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ
}
CString str = _T("<EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD>ץȡʧ<EFBFBD><EFBFBD>!");
CExceptionMsg Msg;
Msg.SetMsg(str);
throw Msg;
}
}
//<2F><><EFBFBD><EFBFBD>ʵ<EFBFBD>ʶ<EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>ֵ
if(m_pProduct != NULL)
{
/*if (m_pProduct->IsbNewAddProduct())
{
Dbxy NPoffset = gCommonFlowMgr->GetNPOffset();
pt.x -= NPoffset.x;
pt.y -= NPoffset.y;
}*/
if(m_bCatchMark3)//ץȡ<D7A5><C8A1><EFBFBD><EFBFBD>mark3
{
m_pProduct->SetRealMark3Pt(pt);
}
else
{
m_pProduct->SetRealMarkPt(pt);
}
}
//˳<><EFBFBD><E3B1A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if(m_pResultVec != NULL)
{
auto CamCoord = gCameraHawkvis->m_Coord;
m_pResultVec->push_back(pt- CamCoord);
}
return true;
}
void CWorkCmdCameraCatch::WirteLog()
{
gLogMgr->WriteDebugLog("[WorkCmd][Camera ץȡmark]");
}