www.pudn.com > ProjectionTransformWork.rar > WorkView.h
// WorkView.h : interface of the CWorkView class
//
/////////////////////////////////////////////////////////////////////////////
#if !defined(AFX_WORKVIEW_H__BD8AD6F9_6A73_490B_BEDA_C968C4BA8BDD__INCLUDED_)
#define AFX_WORKVIEW_H__BD8AD6F9_6A73_490B_BEDA_C968C4BA8BDD__INCLUDED_
#include "ParDlg.h" // Added by ClassView
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
class CWorkView : public CView
{
protected: // create from serialization only
CWorkView();
DECLARE_DYNCREATE(CWorkView)
// Attributes
public:
CWorkDoc* GetDocument();
// Operations
public:
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CWorkView)
public:
virtual void OnDraw(CDC* pDC); // overridden to draw this view
virtual BOOL PreCreateWindow(CREATESTRUCT& cs);
protected:
virtual BOOL OnPreparePrinting(CPrintInfo* pInfo);
virtual void OnBeginPrinting(CDC* pDC, CPrintInfo* pInfo);
virtual void OnEndPrinting(CDC* pDC, CPrintInfo* pInfo);
//}}AFX_VIRTUAL
// Implementation
public:
void DoGraphChange();
void DoChange();
int m_DrawType; //表示投影类型,接收对话框中的参数m_DrawType
CParDlg m_ParDlg; //CParDlg类的对象作为CWorkView类的成员变量
int m_PRPx; //接收编辑框参数
int m_PRPy;
int m_PRPz;
int m_VPNx;
int m_VPNy;
int m_VPNz;
int m_VRPx;
int m_VRPy;
int m_VRPz;
int m_VUPx;
int m_VUPy;
int m_VUPz;
double m_Ux; //用于计算从世界坐标系到观察坐标系的转换矩阵
double m_Uy;
double m_Uz;
double m_Vx;
double m_Vy;
double m_Vz;
double m_Nx;
double m_Ny;
double m_Nz;
int m_X[14]; //图形的原始坐标(齐次坐标)
int m_Y[14];
int m_Z[14];
int m_C[14];
int m_X1[14]; //图形变换后的坐标
int m_Y1[14];
int m_Z1[14];
double m_Change[4][4]; //从世界坐标系转化到观察坐标系的矩阵
double m_GraChange[4][4]; //平行投影变换矩阵
virtual ~CWorkView();
#ifdef _DEBUG
virtual void AssertValid() const;
virtual void Dump(CDumpContext& dc) const;
#endif
protected:
// Generated message map functions
protected:
//{{AFX_MSG(CWorkView)
afx_msg void OnTouying();
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
#ifndef _DEBUG // debug version in WorkView.cpp
inline CWorkDoc* CWorkView::GetDocument()
{ return (CWorkDoc*)m_pDocument; }
#endif
/////////////////////////////////////////////////////////////////////////////
//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_WORKVIEW_H__BD8AD6F9_6A73_490B_BEDA_C968C4BA8BDD__INCLUDED_)