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/MainFrm.cpp |  155 +++++++++++++--------------------------------------
 1 files changed, 40 insertions(+), 115 deletions(-)

diff --git a/EdgeInspector_App/MainFrm.cpp b/EdgeInspector_App/MainFrm.cpp
index ce4c954..ec0566d 100644
--- a/EdgeInspector_App/MainFrm.cpp
+++ b/EdgeInspector_App/MainFrm.cpp
@@ -433,97 +433,41 @@
 			std::vector<DimensionDir> vecDirs = {
 				DIMENSION_A_RIP, DIMENSION_B_RIP, DIMENSION_C_RIP, DIMENSION_D_RIP
 			};
-			pMain->Simulate2PhaseScanByDirs(vecDirs, 1000);
+			pMain->Simulate2PhaseScanByDirs(vecDirs);
 		}
 		break;
 	case PROC_MODE_SIMULATION_SIDESHORT:
 		{			
-			//pMain->m_GlassData.SetScanStartCount(MAX_CAMERA_COUNT);
-			//pMain->SendGlassRecipe();
-			//for(iCam=0;iCam<MAX_CAMERA_COUNT;iCam++)
-			//{					
-			//	pMain->ScanStartGrabManual(iCam,0);
-			//	pMain->ScanStartManual(iCam,0);		
-			//}
-
 			std::vector<DimensionDir> vecDirs = {
 				DIMENSION_B, DIMENSION_D, DIMENSION_B_DN, DIMENSION_D_DN
 			};
-			pMain->Simulate2PhaseScanByDirs(vecDirs, 1000);
+			pMain->Simulate2PhaseScanByDirs(vecDirs);
 		}
 		break;
 	case PROC_MODE_SIMULATION_SIDELONG:
 		{				
-			//pMain->m_GlassData.SetScanStartCount(MAX_CAMERA_COUNT);
-			//pMain->SendGlassRecipe();
-			//for(iCam=0;iCam<MAX_CAMERA_COUNT;iCam++)
-			//{					
-			//	pMain->ScanStartGrabManual(iCam,1);
-			//	pMain->ScanStartManual(iCam,1);				
-			//}
-
 			std::vector<DimensionDir> vecDirs = {
 				DIMENSION_A, DIMENSION_C, DIMENSION_A_DN, DIMENSION_C_DN
 			};
-			pMain->Simulate2PhaseScanByDirs(vecDirs, 1000);
+			pMain->Simulate2PhaseScanByDirs(vecDirs);
 		}
 		break;
 	case PROC_MODE_SIMULATION_ALL:
 		{
-			//g_pLog->DisplayMessage(_T("Simulation Full "));						
-			//pMain->m_GlassData.SetScanStartCount(MAX_DIMENSION_COUNT);
-			//pMain->SendGlassRecipe();
-			//for(iCam=0;iCam<MAX_CAMERA_COUNT;iCam++)
-			//{				
-			//	pMain->ScanStartGrabManual(iCam,0);
-			//	pMain->ScanStartGrabManual(iCam,1);
-			//}
-
-			//if(pMain->m_pThread_CheckSequence != NULL)		
-			//{
-			//	double dOneScanTime = pMain->m_GlassRecipe.m_RecieParm.m_dOneScanTime_sec;
-			//	
-			//	pMain->m_pThread_CheckSequence->AddCheckSeqMSG(CHECKSEQ_GLASS_INSPECTION_OVERTIME,(int)(dOneScanTime* 1000.),pMain->m_HardwareRecipe.GetScanCount()-1);	
-
-			//	g_pLog->DisplayMessage(_T("Simulation Time Out Set : %.1f"),dOneScanTime);
-			//}
-
-			//for(iCam=0;iCam<MAX_CAMERA_COUNT;iCam++)
-			//{
-			//	pMain->ScanStartManual(iCam,0);						
-			//}			
-
-			//DWORD sTime = GetTickCount();
-			//while(TRUE)
-			//{
-			//	if(pMain->m_GlassData.GetScanEnd(0) == TRUE)
-			//		break;
-
-			//	if(GetTickCount() - sTime >= 5000)
-			//		break;
-			//
-			//	Sleep(10);
-			//}
-
-			//for(iCam=0;iCam<MAX_CAMERA_COUNT;iCam++)
-			//{
-			//	pMain->ScanStartManual(iCam,1);
-			//}
-
 			if (pMain->m_HardwareRecipe.m_bUseRipInspection) {
 				std::vector<DimensionDir> vecDirs = {
-					DIMENSION_A, DIMENSION_C, DIMENSION_A_DN, DIMENSION_C_DN,
-					DIMENSION_B, DIMENSION_D, DIMENSION_B_DN, DIMENSION_D_DN,
+					DIMENSION_A, DIMENSION_B, DIMENSION_C, DIMENSION_D,
+					DIMENSION_A_DN, DIMENSION_B_DN, DIMENSION_C_DN, DIMENSION_D_DN,
 					DIMENSION_A_RIP, DIMENSION_B_RIP, DIMENSION_C_RIP, DIMENSION_D_RIP
 				};
-				pMain->Simulate2PhaseScanByDirs(vecDirs, 1000);
+				pMain->Simulate2PhaseScanByDirs(vecDirs);
 			}
 			else {
 				std::vector<DimensionDir> vecDirs = {
-					DIMENSION_A, DIMENSION_C, DIMENSION_A_DN, DIMENSION_C_DN,
-					DIMENSION_B, DIMENSION_D, DIMENSION_B_DN, DIMENSION_D_DN
+					DIMENSION_A, DIMENSION_B, DIMENSION_C, DIMENSION_D,
+					DIMENSION_A_DN, DIMENSION_B_DN, DIMENSION_C_DN, DIMENSION_D_DN
 				};
-				pMain->Simulate2PhaseScanByDirs(vecDirs, 1000);
+				pMain->Simulate2PhaseScanByDirs(vecDirs);
 			}
 		}
 		break;
@@ -534,17 +478,13 @@
 
 BOOL CMainFrame::IV2M_InspectionProcess(DimensionDir eDim)
 {
-	if(IsScanNow())
-	{
+	if(IsScanNow()) {
 		g_pLog->DisplayMessage(_T("Doing Inspection"));
 		return FALSE;
 	}
 
 	g_pBase->m_eProcessMode = PROC_MODE_SIMULATION_ONESIDE;
 	m_eManualInspectSide = eDim;
-
-	// 鐑欑煫鑲� 闃滄緶
-	//return TRUE;
 
 	AfxBeginThread(ManualInspectProcess,this);
 
@@ -553,30 +493,20 @@
 
 void CMainFrame::MLight_OnOff(int iCon,int iCh,BOOL bValue)
 {
-	// 	if(IsScanNow())
-	// 	{
-	// 		g_pLog->DisplayMessage(_T("Doing Inspection"));
-	// 		return;
-	// 	}
-
-	if(m_pLightManager == NULL)
+	if (m_pLightManager == NULL) {
 		return;
+	}
 
 	m_pLightManager->LampTurnOnOff(iCon, iCh, bValue);
 }
 
 BOOL CMainFrame::MLight_SetLightControlValue(int iCon,int iCh, int nValue, BOOL bRef, int nScanIdx, BOOL bAdjLight)
 {
-	// 	if(IsScanNow())
-	// 	{
-	// 		g_pLog->DisplayMessage(_T("Doing Inspection"));
-	// 		return TRUE;
-	// 	}
-
-	if(m_pLightManager == NULL)
+	if (m_pLightManager == NULL) {
 		return FALSE;
+	}
 
-	BOOL	bRet = m_pLightManager->SetLightControlValue(iCon, iCh, nValue);
+	BOOL bRet = m_pLightManager->SetLightControlValue(iCon, iCh, nValue);
 
 	return bRet;
 }
@@ -757,7 +687,7 @@
 	WriteLogManager(str);
 }
 
-void CMainFrame::Simulate2PhaseScanByDirs(const std::vector<DimensionDir>& vDirs, int nTimeoutMs /*=0 琛ㄧず鍙栭厤鏂规椂闂�*/)
+void CMainFrame::Simulate2PhaseScanByDirs(const std::vector<DimensionDir>& vDirs)
 {
 	struct SCamScan { int cam; int scan; };
 
@@ -799,51 +729,47 @@
 	}
 
 	SendGlassRecipe();
-
+	m_GlassData.SetScanStartCount((int)vDirs.size());
 	if (!phase0.empty() && !phase1.empty()) {
+		for (const auto& cs : phase0) {
+			ScanStartGrabManual(cs.cam, 0);
+		}
+
+		for (const auto& cs : phase1) {
+			ScanStartGrabManual(cs.cam, 1);
+		}
+
 		if (m_pThread_CheckSequence != NULL) {
 			double dOneScanTime = m_GlassRecipe.m_RecieParm.m_dOneScanTime_sec;
-			m_pThread_CheckSequence->AddCheckSeqMSG(CHECKSEQ_GLASS_INSPECTION_OVERTIME, (int)(dOneScanTime * nTimeoutMs), m_HardwareRecipe.GetScanCount() - 1);
+			m_pThread_CheckSequence->AddCheckSeqMSG(CHECKSEQ_GLASS_INSPECTION_OVERTIME, (int)(dOneScanTime * 1000), m_HardwareRecipe.GetScanCount() - 1);
 			g_pLog->DisplayMessage(_T("Simulation Time Out Set : %.1f"), dOneScanTime);
 		}
 
 		// nScan == 0
-		if (!phase0.empty()) {
-			m_GlassData.SetScanStartCount((int)phase0.size());
-			for (const auto& cs : phase0) {
-				ScanStartGrabManual(cs.cam, cs.scan);
-				ScanStartManual(cs.cam, cs.scan);
-			}
+		for (const auto& cs : phase0) {
+			ScanStartManual(cs.cam, 0);
 		}
 
-		if (!phase0.empty() && !phase1.empty()) {
-			DWORD sTime = GetTickCount();
-			while (TRUE) {
-				if (m_GlassData.GetScanEnd(0) == TRUE) {
-					break;
-				}
-
-				if (GetTickCount() - sTime > 5000) {
-					break;
-				}
-
-				Sleep(10);
+		DWORD sTime = GetTickCount();
+		while (TRUE) {
+			if (m_GlassData.GetScanEnd(0) == TRUE) {
+				break;
 			}
 
-			// nScan == 1
-			if (!phase1.empty()) {
-				m_GlassData.SetScanStartCount((int)phase1.size());
-				for (const auto& cs : phase1) {
-					ScanStartGrabManual(cs.cam, cs.scan);
-					ScanStartManual(cs.cam, cs.scan);
-				}
+			if (GetTickCount() - sTime > 5000) {
+				break;
 			}
+
+			Sleep(10);
+		}
+
+		for (const auto& cs : phase1) {
+			ScanStartManual(cs.cam, 1);
 		}
 	}
 	else {
 		// nScan == 0
 		if (!phase0.empty()) {
-			m_GlassData.SetScanStartCount((int)phase0.size());
 			for (const auto& cs : phase0) {
 				ScanStartGrabManual(cs.cam, cs.scan);
 				ScanStartManual(cs.cam, cs.scan);
@@ -852,7 +778,6 @@
 
 		// nScan == 1
 		if (!phase1.empty()) {
-			m_GlassData.SetScanStartCount((int)phase1.size());
 			for (const auto& cs : phase1) {
 				ScanStartGrabManual(cs.cam, cs.scan);
 				ScanStartManual(cs.cam, cs.scan);

--
Gitblit v1.9.3