07063257_GLView.h
上传用户:kuqidezhu
上传日期:2022-07-18
资源大小:4151k
文件大小:3k
源码类别:

3D图形编程

开发平台:

Visual C++

  1. // 07063257_GLView.h : interface of the CMy07063257_GLView class
  2. //
  3. /////////////////////////////////////////////////////////////////////////////
  4. #if !defined(AFX_07063257_GLVIEW_H__C753228A_452F_40FA_8B5B_0B9FE3775C13__INCLUDED_)
  5. #define AFX_07063257_GLVIEW_H__C753228A_452F_40FA_8B5B_0B9FE3775C13__INCLUDED_
  6. #if _MSC_VER > 1000
  7. #pragma once
  8. #endif // _MSC_VER > 1000
  9. #include "math.h"
  10. #include <vector>
  11. using   namespace   std; 
  12. #include "AddData.h"
  13. #include "ChooseTexture.h"
  14. #include "StdAfx.h" // Added by ClassView
  15. class CMy07063257_GLView : public CView
  16. {
  17. protected: // create from serialization only
  18. CMy07063257_GLView();
  19. DECLARE_DYNCREATE(CMy07063257_GLView)
  20. // Attributes
  21. public:
  22. CMy07063257_GLDoc* GetDocument();
  23. // Operations
  24. public:
  25. // Overrides
  26. // ClassWizard generated virtual function overrides
  27. //{{AFX_VIRTUAL(CMy07063257_GLView)
  28. public:
  29. virtual void OnDraw(CDC* pDC);  // overridden to draw this view
  30. virtual BOOL PreCreateWindow(CREATESTRUCT& cs);
  31. protected:
  32. virtual BOOL OnPreparePrinting(CPrintInfo* pInfo);
  33. virtual void OnBeginPrinting(CDC* pDC, CPrintInfo* pInfo);
  34. virtual void OnEndPrinting(CDC* pDC, CPrintInfo* pInfo);
  35. //}}AFX_VIRTUAL
  36. // Implementation
  37. public:
  38. int twc;
  39. float aa,bb,cc;
  40. Vertex CalTexture(float xx, float yy, float zz);
  41. int type;
  42. bool opengl_rotate;
  43. int n;
  44. int MAX;
  45. int MAXX,MAXY,MINX,MINY;
  46. Vertex m_vertex[1100];
  47. int m_Rotateangle;
  48. int IsOpen;
  49. vector<Edge>m_edges;
  50. vector<Triangle>m_triangles;
  51. void TriDelaunay(Vertex p1, Vertex p2);
  52. void OPenGL_Lighting();
  53. void OnOpenglLighting();
  54. void OnGetVertex();
  55. void initial();
  56. Vertex GetThirdPoint(Vertex p1, Vertex p2);
  57. void BuildTIN();
  58. virtual ~CMy07063257_GLView();
  59. #ifdef _DEBUG
  60. virtual void AssertValid() const;
  61. virtual void Dump(CDumpContext& dc) const;
  62. #endif
  63. protected:
  64. // Generated message map functions
  65. protected:
  66. HGLRC m_hGLContext;
  67. int m_GLPixelIndex;
  68. BOOL SetWindowPixelFormat(HDC hDC);
  69. BOOL CreateViewGLContext(HDC hDC);
  70. //{{AFX_MSG(CMy07063257_GLView)
  71. afx_msg void OnAdddate();
  72. afx_msg void OnTieTu();
  73. afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
  74. afx_msg void OnDestroy();
  75. afx_msg void OnPaint();
  76. afx_msg void OnSize(UINT nType, int cx, int cy);
  77. afx_msg void OnLeft();
  78. afx_msg void OnRight();
  79. afx_msg void OnUp();
  80. afx_msg void OnDown();
  81. afx_msg void OnLrotaef();
  82. afx_msg void OnRrotatef();
  83. afx_msg void OnZoomout();
  84. afx_msg void OnZoomin();
  85. afx_msg void OnFront();
  86. afx_msg void OnBack();
  87. //}}AFX_MSG
  88. DECLARE_MESSAGE_MAP()
  89. };
  90. #ifndef _DEBUG  // debug version in 07063257_GLView.cpp
  91. inline CMy07063257_GLDoc* CMy07063257_GLView::GetDocument()
  92.    { return (CMy07063257_GLDoc*)m_pDocument; }
  93. #endif
  94. /////////////////////////////////////////////////////////////////////////////
  95. //{{AFX_INSERT_LOCATION}}
  96. // Microsoft Visual C++ will insert additional declarations immediately before the previous line.
  97. #endif // !defined(AFX_07063257_GLVIEW_H__C753228A_452F_40FA_8B5B_0B9FE3775C13__INCLUDED_)