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.

66 lines
1.4 KiB
C++

#include "StdAfx.h"
#include "WorkCmdCameraCatch.h"
#include "ExceptionMsg.h"
#include "Program_SZ_XL_TrackWorkFlow.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 (gLogMgr->IsDebuging())
{
if (m_pResultVec != NULL)
{
m_pResultVec->push_back(pt);
}
return true;
}
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_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)
{
m_pResultVec->push_back(pt);
}
return true;
}
void CWorkCmdCameraCatch::WirteLog()
{
gLogMgr->WriteDebugLog("[WorkCmd][Camera ץȡmark]");
}