📄 tb.h
字号:
/* * Simple trackball-like motion adapted (ripped off) from projtex.c * (written by David Yu and David Blythe). See the SIGGRAPH '96 * Advanced OpenGL course notes. * * * Usage: * * o call tbInit() in before any other tb call * o call tbReshape() from the reshape callback * o call tbMatrix() to get the trackball matrix rotation * o call tbStartMotion() to begin trackball movememt * o call tbStopMotion() to stop trackball movememt * o call tbMotion() from the motion callback * o call tbAnimate(GL_TRUE) if you want the trackball to continue * spinning after the mouse button has been released * o call tbAnimate(GL_FALSE) if you want the trackball to stop * spinning after the mouse button has been released * * Typical setup: * * void init(void) { tbInit(GLUT_MIDDLE_BUTTON); tbAnimate(GL_TRUE); . . . } void reshape(int width, int height) { tbReshape(width, height); . . . } void display(void) { glPushMatrix(); tbMatrix(); . . . draw the scene . . . glPopMatrix(); } void mouse(int button, int state, int x, int y) { tbMouse(button, state, x, y); . . . } void motion(int x, int y) { tbMotion(x, y); . . . } int main(int argc, char** argv) { . . . init(); glutReshapeFunc(reshape); glutDisplayFunc(display); glutMouseFunc(mouse); glutMotionFunc(motion); . . . } * * *//* functions */#ifdef __cplusplusextern "C" {#endifvoidtbInit(GLuint button);voidtbMatrix(void);voidtbReshape(int width, int height);voidtbMouse(int button, int state, int x, int y);voidtbMotion(int x, int y);voidtbAnimate(GLboolean animate);#ifdef __cplusplus}#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -