www.pudn.com > 20050325_c_Pyramid.rar > PyramidView.h


// PyramidView.h : interface of the CPyramidView class 
// 
///////////////////////////////////////////////////////////////////////////// 
 
#if !defined(AFX_PYRAMIDVIEW_H__0B0602EC_56E8_43C0_B064_A5E59FF1C06C__INCLUDED_) 
#define AFX_PYRAMIDVIEW_H__0B0602EC_56E8_43C0_B064_A5E59FF1C06C__INCLUDED_ 
 
#if _MSC_VER > 1000 
#pragma once 
#endif // _MSC_VER > 1000 
 
 
class CPyramidView : public CScrollView 
{ 
protected: // create from serialization only 
	CPyramidView(); 
	DECLARE_DYNCREATE(CPyramidView) 
 
// Attributes 
public: 
	CPyramidDoc* GetDocument(); 
 
// Operations 
public: 
 
// Overrides 
	// ClassWizard generated virtual function overrides 
	//{{AFX_VIRTUAL(CPyramidView) 
	public: 
	virtual void OnDraw(CDC* pDC);  // overridden to draw this view 
	virtual BOOL PreCreateWindow(CREATESTRUCT& cs); 
	protected: 
	virtual void OnInitialUpdate(); // called first time after construct 
	virtual BOOL OnPreparePrinting(CPrintInfo* pInfo); 
	virtual void OnBeginPrinting(CDC* pDC, CPrintInfo* pInfo); 
	virtual void OnEndPrinting(CDC* pDC, CPrintInfo* pInfo); 
	//}}AFX_VIRTUAL 
 
// Implementation 
public: 
	int InputDisplayLenthY; 
	int InputDisplayLenthX; 
	int OriginPartLengthY;//原始数据分块后每块的高 
	int OriginPartLengthX;//原始数据分块后每块的长 
	double m_Scale;//比例尺 
	void MyDisplay(int **** TargetPyramid,int OffSetX,int OffSetY,int DisplayLengthX,int DisplayLengthY,int BeginChipX,int BeginChipY,double Scale); 
	void MyMakePyramid(int ** targetdata,int targetdataX,int targetdataY,int DivideX ,int DivideY); 
	 
	int MyGetPartLengthY(int arrayY,int divideY,int indexy);//得到每个分块的高 
	int MyGetPartLengthX(int arrayX,int divideX,int indexx);//得到每个分块的长 
	int **** MyPyramid;//保存自己建立的金字塔数组 
	int mDivideX;//x方向分块 
	int mDivideY;//y方向分块 
	int MyDivideY(double Dm_Scale,int DBeginY, int DEndY);//计算x方向分块 
	int MyDivideX(double Dm_Scale,int DBeginX, int DEndX);//计算y方向分块 
	int m_array_x;//初始图像数组的列 
	int m_array_y;//初始图像数组的行 
	int ** m_array;//保存初始的图像数组 
	void MyReadTxt(char * txtname,int array_x, int array_y);//从文本中读出初始图像数组 
	virtual ~CPyramidView(); 
#ifdef _DEBUG 
	virtual void AssertValid() const; 
	virtual void Dump(CDumpContext& dc) const; 
#endif 
 
protected: 
 
// Generated message map functions 
protected: 
	//{{AFX_MSG(CPyramidView) 
	afx_msg void OnArea400(); 
	afx_msg void OnArea800(); 
	//}}AFX_MSG 
	DECLARE_MESSAGE_MAP() 
}; 
 
#ifndef _DEBUG  // debug version in PyramidView.cpp 
inline CPyramidDoc* CPyramidView::GetDocument() 
   { return (CPyramidDoc*)m_pDocument; } 
#endif 
 
///////////////////////////////////////////////////////////////////////////// 
 
//{{AFX_INSERT_LOCATION}} 
// Microsoft Visual C++ will insert additional declarations immediately before the previous line. 
 
#endif // !defined(AFX_PYRAMIDVIEW_H__0B0602EC_56E8_43C0_B064_A5E59FF1C06C__INCLUDED_)