📄 cube.h
字号:
/////////////////////////////////////////////////////////////////////////////// Name: cube.h// Purpose: wxGLCanvas demo program// Author: Julian Smart// Modified by:// Created: 04/01/98// RCS-ID: $Id: cube.h,v 1.7 2005/03/27 18:08:08 VZ Exp $// Copyright: (c) Julian Smart// Licence: wxWindows licence/////////////////////////////////////////////////////////////////////////////#ifndef _WX_CUBE_H_#define _WX_CUBE_H_#include "wx/glcanvas.h"// Define a new application typeclass MyApp: public wxApp{public: bool OnInit();};// Define a new frame typeclass TestGLCanvas;class MyFrame: public wxFrame{public: static MyFrame *Create(MyFrame *parentFrame, bool isCloneWindow = false); void OnExit(wxCommandEvent& event); void OnNewWindow(wxCommandEvent& event); void OnDefRotateLeftKey(wxCommandEvent& event); void OnDefRotateRightKey(wxCommandEvent& event);private: MyFrame(wxWindow *parent, const wxString& title, const wxPoint& pos, const wxSize& size, long style = wxDEFAULT_FRAME_STYLE); TestGLCanvas *m_canvas; DECLARE_EVENT_TABLE()};#if wxUSE_GLCANVASclass TestGLCanvas: public wxGLCanvas{ friend class MyFrame;public: TestGLCanvas( wxWindow *parent, wxWindowID id = wxID_ANY, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = 0, const wxString& name = _T("TestGLCanvas") ); TestGLCanvas( wxWindow *parent, const TestGLCanvas *other, wxWindowID id = wxID_ANY, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = 0, const wxString& name = _T("TestGLCanvas") ); ~TestGLCanvas(); void OnPaint(wxPaintEvent& event); void OnSize(wxSizeEvent& event); void OnEraseBackground(wxEraseEvent& event); void OnKeyDown(wxKeyEvent& event); void OnKeyUp(wxKeyEvent& event); void OnEnterWindow(wxMouseEvent& event); void Render(); void InitGL(); void Rotate(GLfloat deg); static GLfloat CalcRotateSpeed(unsigned long acceltime); static GLfloat CalcRotateAngle( unsigned long lasttime, unsigned long acceltime ); void Action( long code, unsigned long lasttime, unsigned long acceltime );private: bool m_init; GLuint m_gllist; long m_rleft; long m_rright; static unsigned long m_secbase; static int m_TimeInitialized; static unsigned long m_xsynct; static unsigned long m_gsynct; long m_Key; unsigned long m_StartTime; unsigned long m_LastTime; unsigned long m_LastRedraw;DECLARE_EVENT_TABLE()};#endif // #if wxUSE_GLCANVAS#endif // #ifndef _WX_CUBE_H_
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -