JunkBox_Win_Lib 1.5.3
Loading...
Searching...
No Matches
GlBaseClass.h
Go to the documentation of this file.
1#pragma once
2
8#include "WGL.h"
9#include "ExClass.h"
10#include <mmsystem.h>
11
12
13#ifdef ENABLE_OPENGL
14
15
16//
17namespace jbxwl {
18
19
21// CGlBaseViewクラス
22//
23class CGlBaseView : public CExView
24{
25public:
26 HGLRC m_hRC;
27 CDC* m_pDC;
28
29 PIXELFORMATDESCRIPTOR glParam;
30//
31public:
32 CGlBaseView();
33 virtual ~CGlBaseView();
34
35protected:
36 virtual void OnActivateView(BOOL bActivate, CView* pActivateView, CView* pDeactiveView);
37
38public:
39 virtual void OnInitialUpdate(void) {} // 初期化
40 virtual void SetState(void) {} // 環境設定
41 virtual void ExecRender(void) {} // 描画
42
43// virtual void ClearObject(void){hasViewData = FALSE;} // デバイスリセット時のリソース開放関数
44 virtual void InitObject(void) { SetState();} // デバイスリセット時のリソース再獲得関数
45 virtual void SetParameter(PIXELFORMATDESCRIPTOR* pfd); // デバイスのパラメータを設定する.
46
47 POINT GetWindowDisplaySize(POINT pt); // ウィンドウが画面に収まるように大きさを再計算する
48 BOOL InitDevice(int xsize=0, int ysize=0, CWnd* cwnd=NULL);
49
50 virtual int GetMouseButton(void);
51
52 DECLARE_MESSAGE_MAP()
53 afx_msg void OnSize(UINT nType, int cx, int cy);
54 afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
55 afx_msg void OnDestroy();
56 virtual void OnDraw(CDC* pDC) { CExView::OnDraw(pDC);}
57};
58
59
60
61/*
62class CGlVTXBaseView : public CGlBaseView
63{
64 //
65 double rTime, gTime, lTime, startTime; // lTime: スピード調節用
66 double angle, angleX, angleY, angleZ; // 回転角
67 double mWheelAc;
68 double mWheelNotch;
69 bool rotation;
70 bool reverseZ;
71
72public:
73 CGlVTXBaseView();
74 virtual ~CGlVTXBaseView();
75
76protected:
77 virtual void OnDraw(CDC* pDC);
78
79public:
80 virtual void OnInitialUpdate() {} // 初期化
81 virtual void SetState() {} // 環境設定
82 virtual void ExecRender() {} // 描画
83 virtual void InitObject(void) { SetState();} // デバイスリセット時のリソース再獲得関数
84
85 virtual BOOL PrepareVB() {return TRUE;} // 頂点バッファのセット
86 virtual void ReleaseVB() {DXRELEASE(vb); DXRELEASE(lb); } // 頂点バッファの開放
87
88 virtual void SwitchRotation(); // 回転モードの切り替え
89 virtual void ExecRotation(); // 回転処理 ExRotation()を使用して回転方向を決める.
90
91 virtual void ExMouseWheel() {} // マウスホイールによる操作の切り替え
92 virtual void ExRotationAngle() {} // 回転方向の入れ替え
93
94 DECLARE_MESSAGE_MAP()
95 afx_msg void OnTimer(UINT_PTR nIDEvent);
96};
97
98*/
99
100
101} // namespace
102
103
104
105
106#endif // ENABLE_OPENGL