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.h |   80 ++++++++++++++++++++++++++++++---------
 1 files changed, 61 insertions(+), 19 deletions(-)

diff --git a/EdgeInspector_App/Recipe/GlassRecipe.h b/EdgeInspector_App/Recipe/GlassRecipe.h
index e09dd22..ef63bc4 100644
--- a/EdgeInspector_App/Recipe/GlassRecipe.h
+++ b/EdgeInspector_App/Recipe/GlassRecipe.h
@@ -1,4 +1,4 @@
-#pragma once
+锘�#pragma once
 
 #include "Config.h"
 #include "cv.h"
@@ -14,11 +14,11 @@
 
 typedef struct tagJUDGEEDGE
 {
-	BOOL bError;			//俊矾 咯何..
-	int  nRefernce;			//  扁霖 	
-	int  nTolPlus;			// +倾侩坷瞒
-	int  nTolMinus;			// -倾侩坷瞒
-	int  nSlant;			//荤急 
+	BOOL bError;			//淇婄熅 鍜綍..
+	int  nRefernce;			//  鎵侀湒 	
+	int  nTolPlus;			// +鍊句京鍧风瀿
+	int  nTolMinus;			// -鍊句京鍧风瀿
+	int  nSlant;			//鑽ゆ�� 
 }JUDGEEDGE, *PJUDGEEDGE;
 
 typedef struct tagUserDefectArea
@@ -53,10 +53,10 @@
 typedef struct tagEXECPTION_AREA
 {
 	int		nAreaType;
-	CRect	rc;			// 康开 困摹 (Mark 盔痢)	
-	SIZE	szErrSize;  // 捞 康开俊辑 利侩瞪 Size    
-	int		nAppDefect; // 利侩瞪 Defect 辆幅
-	int		nDetectLimitedArea;	// 荤侩磊 汲沥 ROI 荤侩 蜡公
+	CRect	rc;			// 搴峰紑 鍥版懝 (Mark 鐩旂棦)	
+	SIZE	szErrSize;  // 鎹� 搴峰紑淇婅緫 鍒╀京鐬� Size    
+	int		nAppDefect; // 鍒╀京鐬� Defect 杈嗗箙
+	int		nDetectLimitedArea;	// 鑽や京纾� 姹叉播 ROI 鑽や京 铚″叕
 
 	void Init()
 	{
@@ -126,9 +126,9 @@
 
 
 public:
-	TCHAR		m_strRecipeName[MAX_STRING_LENGTH];					// 饭矫乔 捞抚.	
-	TCHAR		m_strRecipeFileName[MAX_STRING_LENGTH];				// 饭乔矫 颇老疙	
-	TCHAR		m_strRecipeFileNameBackUp[MAX_STRING_LENGTH];		// 饭乔矫 颇老疙	
+	TCHAR		m_strRecipeName[MAX_STRING_LENGTH];					// 楗煫涔� 鎹炴姎.	
+	TCHAR		m_strRecipeFileName[MAX_STRING_LENGTH];				// 楗箶鐭� 棰囪�佺枡	
+	TCHAR		m_strRecipeFileNameBackUp[MAX_STRING_LENGTH];		// 楗箶鐭� 棰囪�佺枡	
 	int			m_nSoftRevision;
 
 	CString		m_strComment;										// Comment
@@ -222,9 +222,9 @@
 	BOOL WriteRecipe(CConfig *pFile, int nSideIdx, int nNotchIdx);
 
 public:
-	int	   m_nGlassStartLine_pxl;	// Notch 殿废 且 锭 Glass Start Line..
-	CPoint m_ptTopMarkPos;			// Notch 殿废 且 锭 Top Align Mark..
-	CPoint m_ptBotMarkPos;			// Notch 殿废 且 锭 Bot Align Mark..
+	int	   m_nGlassStartLine_pxl;	// Notch 娈垮簾 涓� 閿� Glass Start Line..
+	CPoint m_ptTopMarkPos;			// Notch 娈垮簾 涓� 閿� Top Align Mark..
+	CPoint m_ptBotMarkPos;			// Notch 娈垮簾 涓� 閿� Bot Align Mark..
 
 	BOOL   m_bNotch_Use;
 	CRect  m_rtNotch_Area_pxl;
@@ -258,8 +258,8 @@
 	// Notch Circle
 	int	   m_nNotch_Circle_Count;
 	BOOL   m_bNotch_Circle_Use[MAX_SIDE_NOTCH_CIRCLE_COUNT];
-	CPoint m_ptNotch_Circle_TopMarkPos[MAX_SIDE_NOTCH_CIRCLE_COUNT];			// Notch Circle 殿废 且 锭 Top Align Mark..
-	CPoint m_ptNotch_Circle_BotMarkPos[MAX_SIDE_NOTCH_CIRCLE_COUNT];			// Notch Circle 殿废 且 锭 Bot Align Mark..
+	CPoint m_ptNotch_Circle_TopMarkPos[MAX_SIDE_NOTCH_CIRCLE_COUNT];			// Notch Circle 娈垮簾 涓� 閿� Top Align Mark..
+	CPoint m_ptNotch_Circle_BotMarkPos[MAX_SIDE_NOTCH_CIRCLE_COUNT];			// Notch Circle 娈垮簾 涓� 閿� Bot Align Mark..
 	CRect  m_rtNotch_Circle_Area_pxl[MAX_SIDE_NOTCH_CIRCLE_COUNT];
 	double m_dNotch_Circle_Spec_Radius_um[MAX_SIDE_NOTCH_CIRCLE_COUNT];
 	double m_dNotch_Circle_Spec_Radius_Min_um[MAX_SIDE_NOTCH_CIRCLE_COUNT];
@@ -318,6 +318,45 @@
 	int		m_nJudge_Size_Min_OR_AND;	// 0 : No Use, 1 : OR, 2 : AND
 };
 
+// RIP Thickness
+struct CRIP_THICKNESS_PARM
+{
+	// Inspect
+	//RIP measure of precision
+	BOOL m_bUseInspect = FALSE;
+	int  m_nLeftThres = 0;
+	int  m_nRightThres = 0;
+	int  m_nGlassThres = 0;
+	int  m_nRipDir = 0;				// 0:L 1:R 2:L+R
+	int  m_nRectLeft = 0;			// Inspect Rect L
+	int  m_nTopOffset = 0;			// Inspect Top Offset
+	int  m_nRectRight = 0;			// Inspect Rect R
+	int  m_nBottomOffset = 0;       // Inspect Bottom Offset
+
+	// RIP chip detection
+	BOOL m_bRipUseInspect = FALSE;
+	int	 m_nRipInspect_Range_um=0;
+	int	 m_nRipInspect_SideLine_Offset_um=0;
+	int	 m_nRipMin_Threshold = 0;
+	int	 m_nRipMax_Threshold = 0;
+	
+	
+	// Judgement
+	int  m_nGlassSizeMin_um = 0;
+	int  m_nGlassSizeMax_um = 0;
+	int  m_nLeftRipSizeMin_um = 0;
+	int  m_nLeftRipSizeMax_um = 0;
+	int  m_nRightRipSizeMin_um = 0;
+	int  m_nRightRipSizeMax_um = 0;
+	int	 m_nRipJudge_Size_Min_X_um = 0;
+	int	 m_nRipJudge_Size_Min_Y_um = 0;
+	int	 m_nRipJudge_Size_Min_OR_AND = 0;// 0 : No Use, 1 : OR, 2 : AND
+
+	void Reset();
+	BOOL ReadRecipe(CConfig* pFile, int nSideIdx);
+	BOOL WriteRecipe(CConfig* pFile, int nSideIdx);
+};
+
 class CSIDE_PARM
 {	
 public:
@@ -330,7 +369,7 @@
 	BOOL			WriteRecipe(CConfig *pFile, int nSideIdx);
 
 public:	
-	int				m_nSidePanelSize_um;		// Scan 搁狼 技肺 规氢 农扁
+	int				m_nSidePanelSize_um;		// Scan 鎼佺嫾 鎶�鑲� 瑙勬阿 鍐滄墎
 	int				m_nFindStartEndLine_X_pxl;	// Start/End Find Pos X
 	int				m_nFindStartEndLine_Threshold;
 	int				m_nSideLineThreshold;
@@ -453,6 +492,9 @@
 	// User Defect
 	int						m_nUserDefectAreaCount;
 	CUSER_DEFECT_AREA_PARM	m_UserDefectPrm[MAX_SIDE_USER_DEFECT_AREA_COUNT];
+
+	// Rip Thickness
+	CRIP_THICKNESS_PARM		m_RipThk;
 };
 
 class CGlassRecipe

--
Gitblit v1.9.3