LiFengView.h
上传用户:dfjhuyju
上传日期:2013-03-13
资源大小:11035k
文件大小:3k
源码类别:

OpenGL

开发平台:

Visual C++

  1. // LiFengView.h : interface of the CLiFengView class
  2. //
  3. /////////////////////////////////////////////////////////////////////////////
  4. #if !defined(AFX_LIFENGVIEW_H__C1CB4746_6B2E_4EDC_9A64_1819F32E6A4F__INCLUDED_)
  5. #define AFX_LIFENGVIEW_H__C1CB4746_6B2E_4EDC_9A64_1819F32E6A4F__INCLUDED_
  6. #include "LiFeng_Texture.h"
  7. #include "Vector3.h"
  8. #include "SkyBox.h"
  9. #include "Dem.h"
  10. #include "LiFeng_Camera.h"
  11. #if _MSC_VER > 1000
  12. #pragma once
  13. #endif // _MSC_VER > 1000
  14. class CLiFengView : public CView
  15. {
  16. //****************************************************************************************//
  17. // 系统相关代码
  18. //****************************************************************************************//
  19. protected: // create from serialization only
  20. CLiFengView();
  21. DECLARE_DYNCREATE(CLiFengView)
  22. // Attributes
  23. public:
  24. CLiFengDoc* GetDocument();
  25. // Operations
  26. public:
  27. // Overrides
  28. // ClassWizard generated virtual function overrides
  29. //{{AFX_VIRTUAL(CLiFengView)
  30. public:
  31. virtual void OnDraw(CDC* pDC);  // overridden to draw this view
  32. virtual BOOL PreCreateWindow(CREATESTRUCT& cs);
  33. protected:
  34. virtual BOOL OnPreparePrinting(CPrintInfo* pInfo);
  35. virtual void OnBeginPrinting(CDC* pDC, CPrintInfo* pInfo);
  36. virtual void OnEndPrinting(CDC* pDC, CPrintInfo* pInfo);
  37. //}}AFX_VIRTUAL
  38. // Implementation
  39. public:
  40. virtual ~CLiFengView();
  41. public:
  42. BOOL RenderScene();
  43. BOOL SetupPixelFormat(void);
  44. void SetLogicalPalette(void);
  45. BOOL InitializeOpenGL(CDC* pDC);
  46. protected:
  47. HGLRC m_hrc;
  48. HPALETTE m_hPalette;
  49. CDC* m_pDC;
  50. //****************************************************************************************//
  51. // 自己添加代码
  52. //****************************************************************************************//
  53. //  添加自己的公共函数
  54. public:
  55. void InitScene();
  56. //添私有函数
  57. private:
  58. //添加公有数据
  59.  
  60. public:
  61. LiFeng_Texture mytexture;
  62. LiFeng_Camera mycamera;
  63. CSkyBox myskybox;
  64. CDem m_Dem;
  65. int Win_Width;
  66. int Win_Height;
  67. //添加保护数据
  68. protected:
  69. GLuint texture[2];
  70. #ifdef _DEBUG
  71. virtual void AssertValid() const;
  72. virtual void Dump(CDumpContext& dc) const;
  73. #endif
  74. // Generated message map functions
  75. protected:
  76. //{{AFX_MSG(CLiFengView)
  77. afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
  78. afx_msg void OnDestroy();
  79. afx_msg void OnSize(UINT nType, int cx, int cy);
  80. afx_msg void OnTimer(UINT nIDEvent);
  81. afx_msg void OnLButtonDblClk(UINT nFlags, CPoint point);
  82. afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
  83. afx_msg void OnLButtonUp(UINT nFlags, CPoint point);
  84. afx_msg void OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags);
  85. //}}AFX_MSG
  86. DECLARE_MESSAGE_MAP()
  87. };
  88. #ifndef _DEBUG  // debug version in LiFengView.cpp
  89. inline CLiFengDoc* CLiFengView::GetDocument()
  90.    { return (CLiFengDoc*)m_pDocument; }
  91. #endif
  92. /////////////////////////////////////////////////////////////////////////////
  93. //{{AFX_INSERT_LOCATION}}
  94. // Microsoft Visual C++ will insert additional declarations immediately before the previous line.
  95. #endif // !defined(AFX_LIFENGVIEW_H__C1CB4746_6B2E_4EDC_9A64_1819F32E6A4F__INCLUDED_)