From 1e64f6279358f5c838463497894e020857b37311 Mon Sep 17 00:00:00 2001
From: LYW <leeyeanwoo@diteam.co.kr>
Date: 화, 21 12월 2021 09:37:24 +0900
Subject: [PATCH] Ongoing90 #3835 CF AOI Review Offset Grid 클릭시 해당 되는 결함 DefectMap표시

---
 ReviewSystem/ReviewSystem/DefectMap.cpp |   88 +++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 82 insertions(+), 6 deletions(-)

diff --git a/ReviewSystem/ReviewSystem/DefectMap.cpp b/ReviewSystem/ReviewSystem/DefectMap.cpp
index 249d9f0..db2f55e 100644
--- a/ReviewSystem/ReviewSystem/DefectMap.cpp
+++ b/ReviewSystem/ReviewSystem/DefectMap.cpp
@@ -77,11 +77,14 @@
 	m_RowColor[2]		= RGB(220,20,220);
 	m_RowColor[3]		= RGB(20,220,220);
 	m_RowColor[4]       = RGB(220, 20, 80);
-	for (int i=0; i<5; i++)
+	m_RowColor[5]		= RGB(255, 128, 0);
+	for (int i=0; i<6; i++)
 	{
 		m_pDefectPen[i].CreatePen(PS_SOLID, 1, m_RowColor[i]); 
 		m_pDefectBrush[i].CreateSolidBrush(m_RowColor[i]); 
 	}
+// 	m_pOffsetPen.CreatePen(PS_SOLID, 1, RGB(100, 200, 80));
+// 	m_pOffsetBrush.CreateSolidBrush(RGB(100, 200, 80));
 
 	m_nPlanIndex		= 0;
 	m_bHistoryEnable = TRUE;
@@ -491,6 +494,28 @@
 	 nCamSacnIndex = nScanidx;
 	 nGlassMax = nXpos;
 	 nGlassMin = nYpos;
+}
+
+void CDefectMap::SetOffsetparm(int nCamidx, int nScanidx, BOOL bUse)
+{
+	CDC *MemDC = GetDC();
+
+	nOffSetMode = bUse;
+	nCamIndex = nCamidx;
+	nCamSacnIndex = nScanidx;
+
+	if (bUse == TRUE)
+	{
+		DrawDefect(MemDC);
+		DrawReviewDefect(MemDC);
+		//DrawWsiDefect(&MemDC);
+	}
+
+	nOffSetMode = FALSE;
+	nCamIndex = -1;
+	nCamSacnIndex = -1;
+
+	//Invalidate(TRUE);
 }
 
 void CDefectMap::OnPaint()
@@ -1585,7 +1610,7 @@
 			return 3;
 		}
 		break;
-
+		//蹂�寃� �븘�슂
 	case DefectType_Judge:
 		if (defectFilter.bJudgeOK && (pDefectResult->nJudgeType == DEFECT_JUDGE_CPJT_OK))
 		{
@@ -1600,6 +1625,11 @@
 		if (defectFilter.bJudgePR && (pDefectResult->nJudgeType == DEFECT_JUDGE_CPJT_PR))
 		{
 			return 2;
+		}
+
+		if (defectFilter.bJudgeND && (pDefectResult->nJudgeType == DEFECT_JUDGE_CPJT_ND))
+		{
+			return 3;
 		}
 		break;
 
@@ -1737,6 +1767,11 @@
 		{
 			return 2;
 		}
+
+		if (defectFilter.bJudgeND)
+		{
+			return 3;
+		}
 		break;
 
 	case DefectType_Process:
@@ -1818,13 +1853,36 @@
 			continue;
 		}
 
-		pOldPen = pDC->SelectObject(&m_pDefectPen[nColorIdx]);
-		pDC->SelectStockObject(BLACK_PEN);
-		pOldBrush = pDC->SelectObject(&m_pDefectBrush[nColorIdx]);
+		if (nOffSetMode == TRUE)
+		{
+			if (pDefectResult->nAOICameraIdx == nCamIndex && pDefectResult->nAOIScanIdx == nCamSacnIndex)
+			{
+				pOldPen = pDC->SelectObject(&m_pDefectPen[5]);
+				//pDC->SelectStockObject(BLACK_PEN);
+				pOldBrush = pDC->SelectObject(&m_pDefectBrush[5]);
+			}
+			else
+			{
+				pOldPen = pDC->SelectObject(&m_pDefectPen[5]);
+				pDC->SelectStockObject(BLACK_PEN);
+				pOldBrush = pDC->SelectObject(&m_pDefectBrush[5]);
+				pDC->SelectStockObject(BLACK_BRUSH);
+			}
+
+		}
+
+		else
+		{
+			pOldPen = pDC->SelectObject(&m_pDefectPen[nColorIdx]);
+			pDC->SelectStockObject(BLACK_PEN);
+			pOldBrush = pDC->SelectObject(&m_pDefectBrush[nColorIdx]);
+		}
 
 		nPosX = pDefectResult->nUMOriginX;
 		nPosY = pDefectResult->nUMOriginY;
 		TransformGlass2Map(nPosX, nPosY);
+
+
 
 		pDC->Rectangle(nPosX - m_nDefectSize, nPosY - m_nDefectSize, nPosX + m_nDefectSize, nPosY + m_nDefectSize);
 	}
@@ -2226,7 +2284,25 @@
 
 		for(constVectorSReviewResultIt its=pReviewResult->m_vecSReviewResult.begin(); its!=pReviewResult->m_vecSReviewResult.end();its++)
 		{
-			if(its->nResultCode > ReviewResult_Process_Fail)
+			if (nOffSetMode == TRUE)
+			{
+				if (its->nAOICameraIdx == nCamIndex && its->nAOIScanIdx == nCamSacnIndex)
+				{
+					pOldPen = pDC->SelectObject(&m_pDefectPen[5]);
+					//pDC->SelectStockObject(BLACK_PEN);
+					pOldBrush = pDC->SelectObject(&m_pDefectBrush[5]);
+					//pDC->SelectStockObject(BLACK_BRUSH);
+				}
+				else
+				{
+					pOldPen = pDC->SelectObject(&m_pDefectPen[5]);
+					pDC->SelectStockObject(BLACK_PEN);
+					pOldBrush = pDC->SelectObject(&m_pDefectBrush[5]);
+					pDC->SelectStockObject(BLACK_BRUSH);
+				}
+
+			}
+			else if(its->nResultCode > ReviewResult_Process_Fail)
 			{
 				pOldPen = pDC->SelectObject(&reviewedPen);
 				pOldBrush = pDC->SelectObject(&reviewedBrush);

--
Gitblit v1.9.3