对于Haskell中Gloss库的Rotate函数,我需要为它提供一个角度而不是我用于可移动对象的方向向量,因此我想知道如何转换它?我想我会使用atan2,但是这给了我一个非常奇怪的结果(应该旋转的图片只旋转一点,然后回来等等,而不是它的原点)。
我尝试使用光泽库中的旋转功能加上atan2函数从矢量转换为角度:
Rotate (atan2 (snd dir) (fst dir)) pic
其中 dir 是一个标准化的Vector,最初为(1,0),指向pic(本例中玩家的船)指向并可能移动的方向。
但是这不能正常工作。
如果有人能帮助我,我会非常感激!
祝你好运, Skyfe。