SDC C-Project CF Review 프로그램
LYW
2021-10-14 26e2541b87ca76e16cf69399eb9a3cce62d2e864
ReviewHistory/ReveiwHistory/akImageView.h
»õ ÆÄÀÏ
@@ -0,0 +1,99 @@
#pragma once
#include "akGraph/akGraphBasic3.h"
#include <vector>
struct SPixelInfo
{
   SPixelInfo()
   {
      nWidthPixel = 0;
      nHeightPixel = 0;
      dDiagonalPixel = 0;
      dWidthRealUM = 0;
      dHeightRealUM = 0;
      dDiagonalRealUM = 0;
   }
   int      nWidthPixel;
   int      nHeightPixel;
   double   dDiagonalPixel;
   double   dWidthRealUM;
   double   dHeightRealUM;
   double   dDiagonalRealUM;
};
class CakDataImage2
{
public:
   CakDataImage2(void);
   virtual ~CakDataImage2(void);
   struct _DataImage2
   {
      _DataImage2()
      {
         m_nDrawPosX = m_nDrawPosY = 0;
         m_nRoate = 0;
         m_nDrawWidth = m_nDrawHeight = 0;
         m_bReverseX = m_bReverseY = false;
      }
      CString m_strBitmapFilename;
      CBitmap m_Bitmap;
      BITMAP   m_Bits;
      unsigned char* m_pBitmapData;
      //그리기 ì •ë³´ [김태현 2018/12/7]
      int m_nProjectionType;
      int m_nDrawPosX, m_nDrawPosY;
      int m_nDrawWidth, m_nDrawHeight;
      float m_nRoate;
      bool m_bReverseX, m_bReverseY;
   };
public:
   int SetImageData(char* pFileName, int nImageIndex = 0); //add가 ì•„니면 0번 ì¸ë±ìŠ¤ì— ë„£ëŠ”ë‹¤.
   int GetScaleWidth();
   int GetScaleHeight();
   BOOL GetTrackerRect(CRect & rtRect);
   void DrawROIRect(CDC * pDC);
   int GetImageDataNum() { return m_vecImageData.size(); };
public:
   std::vector<_DataImage2*> m_vecImageData;
   double      m_dWidthScale;
   double      m_dHeightScale;
   double      m_dResolution;
   BOOL         m_bDrawTracker;
   CPoint         m_ptTrackerStart;
//   CCHRectTracker   m_rectTracker;
   CRect         m_rtROIRect;
   SPixelInfo      m_sROIInfo;
   // Scroll Pos
   int         m_nVScroll;
   int         m_nHScroll;
   // Max Scroll Pos
   int         m_nMaxVScroll;
   int         m_nMaxHScroll;
};
class CakImageView : public CakGraphBasic3, public CakDataImage2
{
public:
   CakImageView();
   virtual ~CakImageView();
public:
   virtual void RenderSeries(Graphics* grfx, CDC* pDC);
   virtual void SetAutoScale();
   virtual void SetResize();
   virtual void RenderImage(Graphics* grfx, CDC* pDC);
   virtual void OnMouseInput(akMouseEvent mouseevent, CPoint point);
};