DlgMosaics.h
上传用户:piaozanzhu
上传日期:2008-02-14
资源大小:212k
文件大小:3k
源码类别:

图形图像处理

开发平台:

Visual C++

  1. #if !defined(AFX_DLGMOSAICS_H__88D51007_C1C1_4E4D_B31C_2BA86EBDEB55__INCLUDED_)
  2. #define AFX_DLGMOSAICS_H__88D51007_C1C1_4E4D_B31C_2BA86EBDEB55__INCLUDED_
  3. #include "ImageProcessingDoc.h"
  4. #include "cdib.h"
  5. #if _MSC_VER > 1000
  6. #pragma once
  7. #endif // _MSC_VER > 1000
  8. // DlgMosaics.h : header file
  9. //
  10. #include "ImageProcessingDoc.h"
  11. /////////////////////////////////////////////////////////////////////////////
  12. // CDlgMosaics dialog
  13. class CDlgMosaics : public CDialog
  14. {
  15. // Construction
  16. public:
  17. CImageProcessingDoc* m_pDoc;
  18. CDlgMosaics(CWnd* pParent = NULL, CImageProcessingDoc* pDoc = NULL); 
  19.    // standard constructor
  20. //左图重叠开始的横坐标位置
  21. int left_starX; 
  22. //左图重叠开始的纵坐标位置
  23. int left_starY;
  24.     //左图重叠结束的横坐标位置
  25. int left_endX;
  26. //左图重叠结束的纵坐标位置
  27. int left_endY;
  28. //右图重叠开始的横坐标位置
  29. int right_starX;
  30. //右图重叠开始的纵坐标位置
  31. int right_starY;
  32. //右图重叠结束的横坐标位置
  33. int right_endX;
  34. //右图重叠结束的纵坐标位置
  35. int right_endY;
  36. // Dialog Data
  37. //{{AFX_DATA(CDlgMosaics)
  38. enum { IDD = IDD_DLG_MOSAIC };
  39. // NOTE: the ClassWizard will add data members here
  40. //}}AFX_DATA
  41. // Overrides
  42. // ClassWizard generated virtual function overrides
  43. //{{AFX_VIRTUAL(CDlgMosaics)
  44. protected:
  45. virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
  46. //}}AFX_VIRTUAL
  47. // Implementation
  48. protected:
  49. void MergeDIB(CDib* bmp1,CDib* bmp2);
  50. BOOL IsSameRect(CDib* bmp1,CDib* bmp2);
  51. BOOL IsSameCol(CDib* bmp1,CDib* bmp2,int x1,int y1,int x2,int y2);
  52. BOOL IsSamePix(CDib* bmp1,CDib* bmp2,int x1,int y1,int x2,int y2);
  53. long GetPixOffset(unsigned int X,unsigned int Y,CDib* bmp);
  54. BOOL SetComparDIB(CDib* bmp1,CDib* bmp2);
  55. void CalImageLocation();
  56. // 基准图象数据指针,用于图象拼接
  57. LPBYTE m_lpBaseImg;
  58. // 待配准图象数据指针,用于图象拼接
  59. LPBYTE m_lpSampImg;
  60. // 计算图象位置的标志位。FALSE表示还没有计算图象位置
  61. BOOL m_bCalImgLoc;
  62. // 设置图象等控件的位置大小
  63. // void CalImageLocation();
  64. // 基准图象
  65. CDib* m_pDibInit;  
  66. // 待配准图象
  67. CDib* m_pDibSamp;
  68. CDib* m_pDibResult;
  69. // 配准后的图象
  70. // CDib* Tempbmp;
  71. // 基准图象显示区域
  72. CRect m_rectInitImage;
  73. // 待配准图象显示区域
  74. CRect m_rectResltImage;
  75.     
  76. //相同块的面积
  77. int MAXarea;
  78. // Generated message map functions
  79. //{{AFX_MSG(CDlgMosaics)
  80. afx_msg void OnPaint();
  81. afx_msg void OnOpen();
  82. afx_msg void OnMosaic();
  83. //}}AFX_MSG
  84. DECLARE_MESSAGE_MAP()
  85. };
  86. //{{AFX_INSERT_LOCATION}}
  87. // Microsoft Visual C++ will insert additional declarations immediately before the previous line.
  88. #endif // !defined(AFX_DLGMOSAICS_H__88D51007_C1C1_4E4D_B31C_2BA86EBDEB55__INCLUDED_)