我有一个具有正投影的C ++ / OpenGl / Glut应用程序。
窗口宽500 x 500像素。当前发生鼠标点击时,该点将介于(0,0)和(500,500)之间。
我想采取这一点并将其转换为介于(0,0)和(0,1)之间(将其标准化),或者请求glutMouseFunc()发送回范围为[0]的x和y值,1]。这可能吗?或者我应该采用更加数学的方法将x和y值一次转换为标准化值?
答案 0 :(得分:4)
只需将坐标划分为窗口大小即可。只要确保你保持窗口大小是最新的(即挂钩调整大小事件。)这是零成本,并且它不会出现在配置文件中。
答案 1 :(得分:0)
取窗口大小并用鼠标坐标划分。