鼠标点击开始动画 OpenGL/GLUT C++

Posted

技术标签:

【中文标题】鼠标点击开始动画 OpenGL/GLUT C++【英文标题】:Mouse click starts animation OpenGL/GLUT C++ 【发布时间】:2020-06-14 20:16:51 【问题描述】:

所以基本上我需要在单击鼠标右键时开始翻译。无论状态如何(向上或向下),它都需要继续动画,而某些条件是true。到目前为止我有这个

double tbr, tyg;
    void mouse(int button, int state, int x, int y) 
    if (button == GLUT_RIGHT_BUTTON) 
        if(tbr < 2.0 && tyg < 2.0) 
            do 
                tbr+=0.02;
                tyg+=0.02;
                
            while (0);
            
        glutPostRedisplay();
        
    

但是,当我单击鼠标按钮时,它只会执行一次,当条件为真时不会继续执行此操作。如何使用glutIdleFunc()glutMotionFunc()glutPassiveMotionFunc() 实现此功能?

【问题讨论】:

【参考方案1】:
do 
    tbr+=0.02;
    tyg+=0.02;

while (0); // 0 is false

条件永远不会为真。

【讨论】:

以上是关于鼠标点击开始动画 OpenGL/GLUT C++的主要内容,如果未能解决你的问题,请参考以下文章

如何制作 OpenGL (GLUT) 旋转动画?

OpenGL / GLUT中的鼠标拖动对象[关闭]

如何在 OpenGL/Glut 中更改鼠标光标的位置?

Mac 上的 OpenGL/GLUT 应用程序无法获得焦点 [关闭]

用鼠标在 OpenGL GLUT 中绘制多边形

OpenGL/GLUT 使骑行顺畅的简单问题