From 1e751a5eb3c23d932b5de94456b5a8741f28c7cc Mon Sep 17 00:00:00 2001
From: mrDarker <mr.darker@163.com>
Date: 星期六, 16 八月 2025 17:37:49 +0800
Subject: [PATCH] 1. 修复离线测试设置错误的扫描个数,应该设置的是需要扫描的个数(非相机个数)
---
EdgeInspector_App/Recipe/GlassRecipe.cpp | 150 +++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 149 insertions(+), 1 deletions(-)
diff --git a/EdgeInspector_App/Recipe/GlassRecipe.cpp b/EdgeInspector_App/Recipe/GlassRecipe.cpp
index f1c789c..c63c435 100644
--- a/EdgeInspector_App/Recipe/GlassRecipe.cpp
+++ b/EdgeInspector_App/Recipe/GlassRecipe.cpp
@@ -1,4 +1,4 @@
-#include "StdAfx.h"
+锘�#include "StdAfx.h"
#include "GlassRecipe.h"
//////////////////////////////////////////////////////////////////////////
@@ -553,6 +553,8 @@
m_nUserDefectAreaCount = 0;
for(int i=0; i<MAX_SIDE_USER_DEFECT_AREA_COUNT; i++)
m_UserDefectPrm[i].Reset();
+
+ m_RipThk.Reset();
}
BOOL CSIDE_PARM::ReadRecipe(CConfig *pFile, int nSideIdx)
@@ -723,6 +725,8 @@
for(int nUserDefectAreaIdx=0; nUserDefectAreaIdx<m_nUserDefectAreaCount; nUserDefectAreaIdx++)
m_UserDefectPrm[nUserDefectAreaIdx].ReadRecipe(pFile, nSideIdx, nUserDefectAreaIdx);
+ m_RipThk.ReadRecipe(pFile, nSideIdx);
+
return TRUE;
}
@@ -891,6 +895,8 @@
for(int nUserDefectAreaIdx=0; nUserDefectAreaIdx<m_nUserDefectAreaCount; nUserDefectAreaIdx++)
m_UserDefectPrm[nUserDefectAreaIdx].WriteRecipe(pFile, nSideIdx, nUserDefectAreaIdx);
+
+ m_RipThk.WriteRecipe(pFile, nSideIdx);
return TRUE;
}
@@ -1705,3 +1711,145 @@
return TRUE;
}
+
+void CRIP_THICKNESS_PARM::Reset()
+{
+ m_bUseInspect = m_bRipUseInspect= FALSE;
+ m_nLeftThres = m_nRightThres = m_nGlassThres = 0;
+ m_nRipDir = 0;
+ m_nRectLeft = m_nRectRight = 0;
+ m_nTopOffset = m_nBottomOffset = 0;
+ m_nRipInspect_Range_um = m_nRipInspect_SideLine_Offset_um=0;
+ m_nRipMin_Threshold = 0;
+ m_nRipMax_Threshold= 0;
+
+ m_nGlassSizeMin_um = 0; m_nGlassSizeMax_um = 0;
+ m_nLeftRipSizeMin_um = 0; m_nLeftRipSizeMax_um = 0;
+ m_nRightRipSizeMin_um = 0; m_nRightRipSizeMax_um = 0;
+ m_nRipJudge_Size_Min_X_um = 0; m_nRipJudge_Size_Min_Y_um = 0;
+ m_nRipJudge_Size_Min_OR_AND = 0;
+
+}
+
+BOOL CRIP_THICKNESS_PARM::ReadRecipe(CConfig* pFile, int nSideIdx)
+{
+ if (!pFile) {
+ return FALSE;
+ }
+
+ if (nSideIdx < 0 || nSideIdx >= MAX_SIDE_COUNT) {
+ return FALSE;
+ }
+
+ CString k;
+ k = _T("RipThk_m_bUseInspect");
+ pFile->GetItemValue(nSideIdx, k, m_bUseInspect, 0);
+ k = _T("RipThk_m_nLeftThres");
+ pFile->GetItemValue(nSideIdx, k, m_nLeftThres, 0);
+ k = _T("RipThk_m_nRightThres");
+ pFile->GetItemValue(nSideIdx, k, m_nRightThres, 0);
+ k = _T("RipThk_m_nGlassThres");
+ pFile->GetItemValue(nSideIdx, k, m_nGlassThres, 0);
+ k = _T("RipThk_m_nRipDir");
+ pFile->GetItemValue(nSideIdx, k, m_nRipDir, 2);
+ k = _T("RipThk_m_nRectLeft");
+ pFile->GetItemValue(nSideIdx, k, m_nRectLeft, 0);
+ k = _T("RipThk_m_nTopOffset");
+ pFile->GetItemValue(nSideIdx, k, m_nTopOffset, 0);
+ k = _T("RipThk_m_nRectRight");
+ pFile->GetItemValue(nSideIdx, k, m_nRectRight, 0);
+ k = _T("RipThk_m_nBottomOffset");
+ pFile->GetItemValue(nSideIdx, k, m_nBottomOffset, 0);
+ k = _T("RipThk_m_bRipUseInspect");
+ pFile->GetItemValue(nSideIdx, k, m_bRipUseInspect, 0);
+ k = _T("RipThk_m_nRipInspect_Range_um");
+ pFile->GetItemValue(nSideIdx, k, m_nRipInspect_Range_um, 0);
+ k = _T("RipThk_m_nRipInspect_SideLine_Offset_um");
+ pFile->GetItemValue(nSideIdx, k, m_nRipInspect_SideLine_Offset_um, 0);
+ k = _T("RipThk_m_nRipMin_Threshold");
+ pFile->GetItemValue(nSideIdx, k, m_nRipMin_Threshold, 20);
+ k = _T("RipThk_m_nRipMax_Threshold");
+ pFile->GetItemValue(nSideIdx, k, m_nRipMax_Threshold, 255);
+ k = _T("RipThk_m_nGlassSizeMin_um");
+ pFile->GetItemValue(nSideIdx, k, m_nGlassSizeMin_um, 0);
+ k = _T("RipThk_m_nGlassSizeMax_um");
+ pFile->GetItemValue(nSideIdx, k, m_nGlassSizeMax_um, 0);
+ k = _T("RipThk_m_nLeftRipSizeMin_um");
+ pFile->GetItemValue(nSideIdx, k, m_nLeftRipSizeMin_um, 0);
+ k = _T("RipThk_m_nLeftRipSizeMax_um");
+ pFile->GetItemValue(nSideIdx, k, m_nLeftRipSizeMax_um, 0);
+ k = _T("RipThk_m_nRightRipSizeMin_um");
+ pFile->GetItemValue(nSideIdx, k, m_nRightRipSizeMin_um, 0);
+ k = _T("RipThk_m_nRightRipSizeMax_um");
+ pFile->GetItemValue(nSideIdx, k, m_nRightRipSizeMax_um, 0);
+ k = _T("RipThk_m_nRipJudge_Size_Min_X_um");
+ pFile->GetItemValue(nSideIdx, k, m_nRipJudge_Size_Min_X_um, 0);
+ k = _T("RipThk_m_nRipJudge_Size_Min_Y_um");
+ pFile->GetItemValue(nSideIdx, k, m_nRipJudge_Size_Min_Y_um, 0);
+ k = _T("RipThk_m_nRipJudge_Size_Min_OR_AND");
+ pFile->GetItemValue(nSideIdx, k, m_nRipJudge_Size_Min_OR_AND, 0);
+
+
+ return TRUE;
+}
+
+BOOL CRIP_THICKNESS_PARM::WriteRecipe(CConfig* pFile, int nSideIdx)
+{
+ if (!pFile) {
+ return FALSE;
+ }
+
+ if (nSideIdx < 0 || nSideIdx >= MAX_SIDE_COUNT) {
+ return FALSE;
+ }
+
+ CString k;
+ k = _T("RipThk_m_bUseInspect");
+ pFile->SetItemValue(nSideIdx, k, m_bUseInspect);
+ k = _T("RipThk_m_nLeftThres");
+ pFile->SetItemValue(nSideIdx, k, m_nLeftThres);
+ k = _T("RipThk_m_nRightThres");
+ pFile->SetItemValue(nSideIdx, k, m_nRightThres);
+ k = _T("RipThk_m_nGlassThres");
+ pFile->SetItemValue(nSideIdx, k, m_nGlassThres);
+ k = _T("RipThk_m_nRipDir");
+ pFile->SetItemValue(nSideIdx, k, m_nRipDir);
+ k = _T("RipThk_m_nRectLeft");
+ pFile->SetItemValue(nSideIdx, k, m_nRectLeft);
+ k = _T("RipThk_m_nTopOffset");
+ pFile->SetItemValue(nSideIdx, k, m_nTopOffset);
+ k = _T("RipThk_m_nRectRight");
+ pFile->SetItemValue(nSideIdx, k, m_nRectRight);
+ k = _T("RipThk_m_nBottomOffset");
+ pFile->SetItemValue(nSideIdx, k, m_nBottomOffset);
+ k = _T("RipThk_m_bRipUseInspect");
+ pFile->SetItemValue(nSideIdx, k, m_bRipUseInspect);
+ k = _T("RipThk_m_nRipInspect_Range_um");
+ pFile->SetItemValue(nSideIdx, k, m_nRipInspect_Range_um);
+ k = _T("RipThk_m_nRipInspect_SideLine_Offset_um");
+ pFile->SetItemValue(nSideIdx, k, m_nRipInspect_SideLine_Offset_um);
+ k = _T("RipThk_m_nRipMin_Threshold");
+ pFile->SetItemValue(nSideIdx, k, m_nRipMin_Threshold);
+ k = _T("RipThk_m_m_nRipMax_Threshold");
+ pFile->SetItemValue(nSideIdx, k, m_nRipMax_Threshold);
+ k = _T("RipThk_m_nGlassSizeMin_um");
+ pFile->SetItemValue(nSideIdx, k, m_nGlassSizeMin_um);
+ k = _T("RipThk_m_nGlassSizeMax_um");
+ pFile->SetItemValue(nSideIdx, k, m_nGlassSizeMax_um);
+ k = _T("RipThk_m_nLeftRipSizeMin_um");
+ pFile->SetItemValue(nSideIdx, k, m_nLeftRipSizeMin_um);
+ k = _T("RipThk_m_nLeftRipSizeMax_um");
+ pFile->SetItemValue(nSideIdx, k, m_nLeftRipSizeMax_um);
+ k = _T("RipThk_m_nRightRipSizeMin_um");
+ pFile->SetItemValue(nSideIdx, k, m_nRightRipSizeMin_um);
+ k = _T("RipThk_m_nRightRipSizeMax_um");
+ pFile->SetItemValue(nSideIdx, k, m_nRightRipSizeMax_um);
+ k = _T("RipThk_m_nRipJudge_Size_Min_X_um");
+ pFile->SetItemValue(nSideIdx, k, m_nRipJudge_Size_Min_X_um);
+ k = _T("RipThk_m_nRipJudge_Size_Min_Y_um");
+ pFile->SetItemValue(nSideIdx, k, m_nRipJudge_Size_Min_Y_um);
+ k = _T("RipThk_m_nRipJudge_Size_Min_OR_AND");
+ pFile->SetItemValue(nSideIdx, k, m_nRipJudge_Size_Min_OR_AND);
+
+ return TRUE;
+}
\ No newline at end of file
--
Gitblit v1.9.3