副机不解析Mark点&修正读入参数时的错误。

master
bestlqiang 4 years ago
parent a8137f3d21
commit 0e64f2f40b

@ -119,6 +119,7 @@ private:
bool m_bUseLaser;//是否开关激光 bool m_bUseLaser;//是否开关激光
//振镜校准参数-------------------------------------------------------------- //振镜校准参数--------------------------------------------------------------
double m_CalibrationPointGap;//打点之间的间隔mm double m_CalibrationPointGap;//打点之间的间隔mm
public:
double m_CalibrationRange;//振镜校准范围mm double m_CalibrationRange;//振镜校准范围mm
}; };

@ -474,10 +474,10 @@ void CDlgSW_XL_Flow::UpdateCutPar()
m_MarkAreaCutCount = gCommonFlowMgr->GetAreaCycleCnt();//循环次数 m_MarkAreaCutCount = gCommonFlowMgr->GetAreaCycleCnt();//循环次数
m_Jig2PrtOft_x = gCommonFlowMgr->m_Jig2PrtOft.x;//针对产品的切割偏移 m_Jig2PrtOft_x = gCommonFlowMgr->m_Jig2PrtOft.x;//针对产品的切割偏移
m_Jig2PrtOft_x = gCommonFlowMgr->m_Jig2PrtOft.x;//针对产品的切割偏移 m_Jig2PrtOft_y = gCommonFlowMgr->m_Jig2PrtOft.y;//针对产品的切割偏移
m_Jig2PrtOft_x = gCommonFlowMgr->m_Jig4PrtOft.x;//针对产品的切割偏移 m_Jig4PrtOft_x = gCommonFlowMgr->m_Jig4PrtOft.x;//针对产品的切割偏移
m_Jig2PrtOft_x = gCommonFlowMgr->m_Jig4PrtOft.x;//针对产品的切割偏移 m_Jig4PrtOft_y = gCommonFlowMgr->m_Jig4PrtOft.y;//针对产品的切割偏移
{ {
CString path; CString path;
@ -489,10 +489,10 @@ void CDlgSW_XL_Flow::UpdateCutPar()
ar + m_Jig4PrtOft_y; ar + m_Jig4PrtOft_y;
gCommonFlowMgr->m_Jig2PrtOft.x= m_Jig2PrtOft_x;//针对产品的切割偏移 gCommonFlowMgr->m_Jig2PrtOft.x= m_Jig2PrtOft_x;//针对产品的切割偏移
gCommonFlowMgr->m_Jig2PrtOft.x = m_Jig2PrtOft_y;//针对产品的切割偏移 gCommonFlowMgr->m_Jig2PrtOft.y = m_Jig2PrtOft_y;//针对产品的切割偏移
gCommonFlowMgr->m_Jig4PrtOft.x = m_Jig4PrtOft_x;//针对产品的切割偏移 gCommonFlowMgr->m_Jig4PrtOft.x = m_Jig4PrtOft_x;//针对产品的切割偏移
gCommonFlowMgr->m_Jig4PrtOft.x = m_Jig4PrtOft_y;//针对产品的切割偏移 gCommonFlowMgr->m_Jig4PrtOft.y = m_Jig4PrtOft_y;//针对产品的切割偏移
} }

@ -382,6 +382,7 @@ bool CDxfReadMgr::OpenDxfFileDlg(double Angle)
if (!fp) if (!fp)
{ {
gLogMgr->WriteDebugLog("Func : ReadDxfFile ---->Dxf File Open Error!"); gLogMgr->WriteDebugLog("Func : ReadDxfFile ---->Dxf File Open Error!");
//"D:\紫外切割机\同兴达双头-推治具\LaiPuLaser\Debug\TempMarkData\D287.dxf"
return false; return false;
} }
m_LINE.Empty(); m_LINE.Empty();

@ -1008,19 +1008,21 @@ void CObjComponentMgr::CreatObjByLayerObj()
//从obj 中分析出两个定位mark 的位置 //从obj 中分析出两个定位mark 的位置
void CObjComponentMgr::AnalyseMarkPt() void CObjComponentMgr::AnalyseMarkPt()
{ {
vector<CObjComponent*> MarkVec; return;
//vector<CObjComponent*> MarkVec;
//先找出圆形对象 //先找出圆形对象
{ {
vector<CObjComponent>::iterator iter = m_ComponentVec.begin(); vector<CObjComponent>::iterator iter = m_ComponentVec.begin();
vector<CObjComponent>::iterator iter_end = m_ComponentVec.end(); vector<CObjComponent>::iterator iter_end = m_ComponentVec.end();
for(;iter!=iter_end;iter++) for(;iter!=iter_end;)
{
if((*iter).IsCircle())
{ {
MarkVec.push_back(&(*iter)); if ((*iter).IsCircle())
} m_ComponentVec.erase(iter);
else
iter++;
} }
} }
/*
{ {
bool flg = false; bool flg = false;
int size = MarkVec.size(); int size = MarkVec.size();
@ -1035,7 +1037,7 @@ void CObjComponentMgr::AnalyseMarkPt()
MarkVec[1]->SetbMarkObj(true); MarkVec[1]->SetbMarkObj(true);
MarkVec[2]->SetbMarkObj(true); MarkVec[2]->SetbMarkObj(true);
} }
/* if(size>=3) / * if(size>=3)
{ {
sort(MarkVec.begin(), MarkVec.end(), [](CObjComponent * & a, CObjComponent* & b) {return (a->GetBasePt().y) < (b->GetBasePt().y); }); sort(MarkVec.begin(), MarkVec.end(), [](CObjComponent * & a, CObjComponent* & b) {return (a->GetBasePt().y) < (b->GetBasePt().y); });
@ -1143,13 +1145,13 @@ void CObjComponentMgr::AnalyseMarkPt()
MarkVec[Mark3Idx]->NotCollect();//不要收集加工数据 MarkVec[Mark3Idx]->NotCollect();//不要收集加工数据
MarkVec[Mark3Idx]->SetbMark1Obj(false); MarkVec[Mark3Idx]->SetbMark1Obj(false);
}* / }* /
}*/ }* /
if(!flg) if(!flg)
{ {
CMsgBox MsgBox; CMsgBox MsgBox;
MsgBox.Show("未发现定位点!"); MsgBox.Show("未发现定位点!");
} }
} }*/
} }
//获得基准对象的 //获得基准对象的
DbSize CObjComponentMgr::GetBaseSize(int idx) DbSize CObjComponentMgr::GetBaseSize(int idx)

@ -470,7 +470,13 @@ void CProduct::TheoryDataToRealData(vector<Dbxy> &vec, Dbxy &AreaCenter, Dbxy Cu
(*iter).y += CutAdjust.y; (*iter).y += CutAdjust.y;
} }
auto DataRange = gCommonFlowMgr->m_CalibrationRange / 2;
if (abs(iter->x)>DataRange||abs(iter->y)>DataRange)
{
CExceptionMsg msg;
msg.SetMsg(CString("标刻数据异常,超出校准范围!"));
throw msg;
}
} }
} }

@ -139,7 +139,7 @@ void CServerMgr::OnReceive(int nErrorCode)
#ifndef DEBUG_lOCAL #ifndef DEBUG_lOCAL
CString NetDir = gProgram_SZ_XL->m_NetPath + ":"; //¹²ÏíÅÌ CString NetDir = gProgram_SZ_XL->m_NetPath + ":"; //¹²ÏíÅÌ
#else #else
CString NetDir = "D:\\紫外切割机\\信利双头(20200519)\\LaiPuLaser\\Debug\\TempMarkData\\";//共享盘 CString NetDir = "D:\\紫外切割机\\同兴达双头 - 推治具\\LaiPuLaser\\Debug\\TempMarkData";//共享盘
#endif #endif
CString NetparfilePath = NetDir + Name + ".par"; CString NetparfilePath = NetDir + Name + ".par";
CString NetarefilePath = NetDir + Name + ".are"; CString NetarefilePath = NetDir + Name + ".are";
@ -149,7 +149,7 @@ void CServerMgr::OnReceive(int nErrorCode)
CopyFile(NetarefilePath, NewAreFilePath, false); CopyFile(NetarefilePath, NewAreFilePath, false);
CopyFile(NetPIfilePath, NewPIFilePath, false); CopyFile(NetPIfilePath, NewPIFilePath, false);
fileName.MakeLower(); //fileName.MakeLower();
if (fileName.Find("dxf") != -1) if (fileName.Find("dxf") != -1)
{ {
gServer->m_RcvFileName = NetDir +"\\"+ fileName; gServer->m_RcvFileName = NetDir +"\\"+ fileName;
@ -259,7 +259,7 @@ void CServerMgr::OnReceive(int nErrorCode)
if (rcvcnt!= arryCnt*(sizeof(int))) if (rcvcnt!= arryCnt*(sizeof(int)))
{ {
gLogMgr->WriteDebugLog("接收已选中Obj索引数组错误"); gLogMgr->WriteDebugLog("接收已选中Obj索引数组错误.");
} }
int idx; int idx;

Binary file not shown.
Loading…
Cancel
Save