SDC C-Project CF Review 프로그램
LYW
2021-10-15 e5fa774d622d6852fe8e1f033045aed221649108
ReviewHistory/include/akGraph/akGraphCodeJ.h
»õ ÆÄÀÏ
@@ -0,0 +1,90 @@
#pragma once
#include "akGraph/akGraphBase.h"
#include "akGraph/akDataBasic1.h"
#include "akGraph/akColorSettingDlg.h"
#include <vector>
class AFX_EXT_CLASS CakGraphCodeJ : public CakGraphBase, public CakDataBasic1
{
public:
public:
   CakGraphCodeJ(void);
   virtual ~CakGraphCodeJ(void);
public:
   virtual   void RenderBegin( CDC* pDC, CRect rectDC );
   virtual BOOL CreateGraph(CWnd* pParent, CRect rect);
   virtual void RenderDataArea(Graphics* grfx, CDC* pDC); //데이터 ì˜ì—­ ê·¸ë¦¬ê¸°
   virtual void RenderAxis(Graphics* grfx, CDC* pDC); //
   virtual void RenderLabel(Graphics* grfx, CDC* pDC); //
   virtual void RenderTitle(Graphics* grfx, CDC* pDC);
   virtual void RenderEnd(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);
   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); //윈도우 ì¢Œí‘œì— ë”°ë¥¸ ë°ì´í„°
   virtual void SetAutoScale();
   virtual void SetDataNum(int datanum);
   virtual void ReDraw(bool bReDrawALL);
   void SetHorMode(bool bFlag = true); //가로 ëª¨ë“œ
   void SetCalculatorAvr();//값들의 í‰ê· ì„ í™”면에 í‘œì‹œ
   CString m_strAVR;
   void SetAutoBarScale(int margin);
   int m_nBarGab; //막대 ê·¸ëž˜í”„ ì‚¬ì´ì˜ ê°„격
   void SetFullScreen(bool flag);
   void SetFullMode(bool flag, int x, int y, int width, int height); //풀 ëª¨ë“œ í‚¤ê³  ë”.. ê·¸ë¦¬ê³  í’€ëª¨ë“œ ì‹¸ì´ì¦ˆ
   void GraphType(int nType);
   bool GetValuebyMousePos(int mousex, int mousey, int* index, double* val);
private:
protected:
   bool m_bGrid;
   CakColorSettingDlg* m_pColorSettingDlg;
public:
   bool m_bIntegerAxisX;
   bool m_bIntegerAxisY;
   bool m_bAVR;//화면에 í‰ê· ê°’ í‘œì‹œ í•  ê²ƒì¸ì§€ì— ëŒ€í•œ í”Œë ˆê·¸
   std::vector<double> m_vecProbabilityData; //이상이하확률계산데이터
   int m_nBarWidth;
   CakRect m_rectFullMode;
   CakRect m_rectNormalMode;
   int m_nGraphType; //0은 ë°”타입 ì„  íƒ€ìž… ëª¨ë‘ í‘œí˜„, 1은 ë°”타입만 í‘œí˜„
   int m_nTextValueShowLevel; //그래프 ìœ„에 í…ìŠ¤íŠ¸ë¡œ ê°’ í‘œì‹œ(-1은 í‘œì‹œ ì•ˆí•¨ 0에서 3까지 ì†Œìˆ˜ ìžë¦¬ìˆ˜ í‘œí˜„)
   CString*  m_strAxisXText;
   COLORREF* m_clrAxisXColor;
   double m_avr;
protected:
   double m_nTimeline;
   bool m_bFullScreen;
   bool m_bFullMode;
   bool m_bHorMode;
public:
   DECLARE_MESSAGE_MAP()
   afx_msg void OnDestroy();
   LRESULT OnColorSettingUpdate(WPARAM wParam, LPARAM lParam);
};