From 3ce48f6dbeb537e252edb0d62c88a28796e36674 Mon Sep 17 00:00:00 2001 From: SWK <sungwk82@diteam.co.kr> Date: 월, 26 12월 2022 15:04:42 +0900 Subject: [PATCH] ongoing60 #4403 CF AOI Review TACT 지연 개선 1. 신호 출력 방식 재개선 - 유지 시간이 없는 신호는 바로 출력 진행하도록 변경 2. 불필요 Delay 제거 및 시퀀스 변경 - 얼라인 측정 종료 처리 간 제어 신호 먼저 출력 후 카메라 Stop으로 변경 - 물류 정보 읽기 처리 후 1000ms Delay 삭제 - 얼라인 측정 시작(카메라 Live Start) 후 Delay 300ms -> 100ms(이미지 들어오는 시간 확보 필요) - ReadRawFile 처리 시작 전 500ms Delay 삭제 - Path Scheduling 완료 후 Review Ready 신호 출력 전 1000ms Delay 삭제 3. 버그 수정 - 이미지 저장 경로 생성 간 예외 처리 부분 버그 수정 4. 로그 시간 출력 불합리 개선 - 로그 시간이 파일 출력 시점으로 작성되어 로그 스래드 지연 시 시간이 맞지 않는 불합리 있음 - 로그 시간은 로그 발생 시점에 시간 저장, 해당 시간 이용하여 파일에 기록하도록 변경 --- ReviewHistory/include/akGraph/akGraphImage.h | 84 ++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 84 insertions(+), 0 deletions(-) diff --git a/ReviewHistory/include/akGraph/akGraphImage.h b/ReviewHistory/include/akGraph/akGraphImage.h new file mode 100644 index 0000000..9482200 --- /dev/null +++ b/ReviewHistory/include/akGraph/akGraphImage.h @@ -0,0 +1,84 @@ +#pragma once + +#include "akGraph/akGraphBase.h" +#include "akGraph/akDataImage.h" + +#include "akGraph/akRangeSettingNormalDlg.h" +#include "akGraph/akRangeSettingTimeDlg.h" + + +class AFX_EXT_CLASS CakGraphImage : public CakGraphBase , public CakDataImage +{ +public: + CakGraphImage(void); + virtual ~CakGraphImage(void); + + + DECLARE_MESSAGE_MAP() +public: + virtual BOOL CreateGraph(CWnd* pParent, CRect rect); + + virtual void RenderGrid(Graphics* grfx, CDC* pDC); + virtual void RenderDataArea(Graphics* grfx, CDC* pDC); //데이터 영역 그리기 + + + virtual void RenderAxis(Graphics* grfx, CDC* pDC); //축 영역 그리기 + virtual void RenderTitle(Graphics* grfx, CDC* pDC); //제목 영역 그리기 + virtual void RenderLabel(Graphics* grfx, CDC* pDC); //해당 축에 틱그리기, 데이터 영역 외각선 그리기 + virtual void RenderMouseMoveInfo(Graphics* grfx, CDC* pDC);//마우스 움직일때 위치값 표시하는부분 + virtual void RenderEnd(Graphics* grfx, CDC* pDC); //그리는 부분 마지막에 추가(Redraw false 할때도 그림) + + virtual void RenderImage(Graphics* grfx, CDC* pDC); + + + virtual void OnKeyInput(int key, int mode); //mode 0==keyup, mode 1==keydown + virtual void OnMouseInput(akMouseEvent mouseevent, CPoint point); + virtual void MouseInput(CakMouseState mousestate); + + + virtual void SetColorType(int nIndex); + + inline int GetWindowPosX(double xvalue); //위치 값에 따른 윈도우 좌표 + inline int GetWindowPosY(double yvalue); //위치 값에 따른 윈도우 좌표 + inline double GetValuePosDataX(int xpos, bool dataArea = false); //윈도우 좌표에 따른 데이터 + inline double GetValuePosDataY(int ypos, bool dataArea = false); //윈도우 좌표에 따른 데이터 + + double GetValuePosRangeX(int nValue){return abs(GetValuePosDataX(nValue)-GetValuePosDataX(0));}; + double GetValuePosRangeY(int nValue){return abs(GetValuePosDataY(nValue)-GetValuePosDataY(0));}; + int GetWindowPosRangeX(double dValue){return abs(GetWindowPosX(dValue)-GetWindowPosX(0));}; + int GetWindowPosRangeY(double dValue){return abs(GetWindowPosY(dValue)-GetWindowPosY(0));}; + + void SetReverseModeX(bool flag); //x축 역방향 표시 + bool GetReverseModeX(){return m_bReverseX;}; //x축 역방향 표시 + void SetReverseModeY(bool flag); //y축 역방향 표시 + bool GetReverseModeY(){return m_bReverseY;}; //y축 역방향 표시 + + + void SetClossLinePos(double x, double y); + + virtual void SetAutoScale(); + + double getValueY(int nSeriesIndex, double xpos); + int getDataIndex(int nSeriesIndex, double xpos); + + LRESULT OnRangeSettingNormalUpdate(WPARAM wParam, LPARAM lParam); + LRESULT OnRangeSettingTimeUpdate(WPARAM wParam, LPARAM lParam); + + +protected: + + bool m_bGrid; + bool m_bReverseX; + bool m_bReverseY; + +public: + CakRangeSettingNormalDlg* m_pRangeYSettingDlg; + CakRangeSettingNormalDlg* m_pRangeXSettingDlg; + bool m_bRangeYSetting; + bool m_bRangeXSetting; + bool m_bFastDrawAlg; + afx_msg void OnDestroy(); + afx_msg void OnKillFocus(CWnd* pNewWnd); +}; + + -- Gitblit v1.9.3