【问题标题】:global transform to local transform?全局变换到局部变换?
【发布时间】:2012-08-12 08:36:30
【问题描述】:

与此相关:apply non-hierarchial transforms to hierarchial skeleton?

如果一个对象连接到另一个对象,并且您需要在全局空间中设置它的位置、旋转和缩放,那么在知道“父”对象的相同值的情况下,如何获取这些值的本地版本?

(在另一个线程中,我可以执行 matrix.decompose() 从矩阵中获取这些值)

【问题讨论】:

    标签: math graphics 3d spaces


    【解决方案1】:

    只需将对象的世界变换矩阵乘以父世界变换的逆矩阵:

    M_loc = M_parent_inv * M
    

    【讨论】:

    • 原理是一样的:从世界位置减去父世界位置,如果旋转是矩阵,则将世界旋转矩阵乘以父旋转逆,如果是四元数,则世界旋转四元数乘以父旋转四元数共轭, 和世界比例除以父母的世界比例。
    • “父腐四元数共轭”?
    • 父旋转四元数的共轭
    • 我不知道四元数的共轭是什么意思。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-27
    • 1970-01-01
    相关资源
    最近更新 更多