#pragma once
|
|
#include "akGraph/akGraphBasic3.h"
|
#include <vector>
|
|
/*< LYW 20211018 - #3684 ADD Start >*/
|
#define UM_FORMMAP_IMAGEMOUSECLICK WM_USER+0x2003
|
/*< LYW 20211018 - #3684 ADD End >*/
|
|
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;
|
/*< LYW 20211018 - #3684 ADD Start >*/
|
// OnePixel
|
double m_dOnePixelX;
|
double m_dOnePixelY;
|
/*< LYW 20211018 - #3684 ADD End >*/
|
|
|
};
|
|
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);
|
};
|