glutPassiveMotionFunc()似乎在移动开始时调用,而不是在结束时调用。我怎么在最后再打电话?

时间:2014-10-24 23:07:06

标签: python opengl glut

我对OpenGL编程比较陌生,我在将鼠标放在中心时遇到了一些麻烦。从我所看到的,当鼠标开始移动时调用glutPassiveMotionFunc(),而不是在移动结束时调用,因为在函数中,我将鼠标位置设置回中心:

def on_mouse_move(x, y):
     xpos = glut.glutGet(glut.GLUT_WINDOW_WIDTH) / 2
     ypos = glut.glutGet(glut.GLUT_WINDOW_HEIGHT) / 2
     glut.glutWarpPointer(xpos, ypos)


glut.glutPassiveMotionFunc(on_mouse_move)
glut.glutMotionFunc(on_mouse_move)

但是每当我再次开始移动时,光标只会移回中心。如果我停止移动鼠标,光标将停留在它最后的位置,然后当我再次开始移动它时,它会将其移回中心。

如何在动作结束时调用该功能,或者至少在动作停止后再调用一次以重置它?

0 个答案:

没有答案