【问题标题】:Converting a direction vector to a quaternion rotation将方向向量转换为四元数旋转
【发布时间】:2013-03-30 05:36:27
【问题描述】:

我可以找到很多关于将四元数转换为方向向量的问题,但没有一个相反的问题,这让我觉得我做错了什么,但请耐心等待。

我要做的只是使用箭头模型显示定向光的方向。

定向光的方向是单位向量,但模型是使用四元数旋转的。

那么..如何旋转这个模型以匹配光的方向?

或者我疯了,我真的做不到,因为灯光没有位置,但模型有?

【问题讨论】:

    标签: vector 3d quaternions


    【解决方案1】:

    方向向量不是定义的旋转,它仍然有无数种可能的解。请参阅没有关于如何围绕轴旋转的信息。第二,向量是可能的,因为向量和旋转(具有有意义的中心)以及实际上是完全定义的矩阵。

    因为在您的情况下,旋转毫无意义,只需使用向上矢量作为参考(也就是说,除非您的光线自上而下发光,反之亦然,否则您需要另一个参考)。

    因此,将方向向量 D 和上向量 U 的叉积作为侧向量 S,然后将 D 和 S 相交以获得新的 Un。然后使用 D, Un, S 作为行(或列,取决于您的计算规则的设置方式)作为矩阵。矩阵到四元数是众所周知的数学。

    【讨论】:

    猜你喜欢
    • 2022-10-16
    • 2011-10-08
    • 1970-01-01
    • 2012-06-11
    • 2023-04-06
    • 1970-01-01
    • 2010-12-06
    • 1970-01-01
    • 2014-03-12
    相关资源
    最近更新 更多