Panda3D获取鼠标位置的方法
Panda3D获取鼠标位置的方法有不少,这里介绍两种,其一是官方指南中提到的:
if base.mouseWatcherNode.hasMouse(): x=base.mouseWatcherNode.getMouseX() y=base.mouseWatcherNode.getMouseY()
这样获取到的鼠标位置是以屏幕中心点为(0, 0),左上侧顶点为(-1.0, -1.0),右下顶点为(1.0, 1.0)的值。我暂时没找到通过这种方式设置鼠标位置的方法,如有知道还请指教。
另外一种获取鼠标位置的方法如下:
md = base.win.getPointer( 0 ) x = md.getX( ) y = md.getY( ) if base.win.movePointer( 0, centerx, centery ): deltaHeading = ( x - centerx ) * factor deltaPitch = ( y - centery ) * factor
这里取得的x和y值是以左上角为(0, 0)点的像素坐标值。可以通过movePointer(0, x, y)这样的做法去改变坐标位置,第一个参数我认为是鼠标索引,因为Panda3D是支持多鼠标操作的。。。