////////////////////////////////////////////////////////////////////////////// //文件 ImageTraceBase.h //主要功能: // //程序编写: 2005-12-07 ///////////////////////////////////////////////////////////////////////////// #pragma once #include "afxtempl.h" #include "ImageBase.h" namespace NImage { typedef CList CListPOINT; class AFX_EXT_CLASS CImageTraceBase { public: CImageTraceBase(void); virtual ~CImageTraceBase(void); void SetImage(CImageBase* pImage); CImageBase* GetImage(void); CListPOINT& GetLineList(void); void ClearLineList(void); COLORREF GetV(long x, long y); void SetV(long x, long y, COLORREF color); void GetIJ(int &x, int &y, int direct); BYTE* GetPixelAddress(long x, long y); int GetBpp(void); int GetWidth(void); int GetHeight(void); BOOL IsSimilar(COLORREF cr1, COLORREF cr2); //是否是相同或相似的两个颜色 void SetColorSimilar(int errSimilar); int GetColorSimilar(void); void Undo(double nw); int GetCurve(void *pCurve); long GetLineSize(void); //获得一行的字节尺寸 protected: //颜色相似度(颜色容限),也就是单位这间的最大误差值,在该范围内表示颜色是相似的, //使RGB颜色任一分量的误差不能超过该容限值 int m_errColorSimilar; CImageBase* m_pImage; long m; //图片的高度\宽度 long n; CListPOINT m_lineList; }; };