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_)