推导从两个变换的3D三维旋转矩阵矢量

问题描述:

目前我正在试图基于三维两对推导出完整的旋转矩阵ř矢量(V1,V1(V2,V2 使得推导从两个变换的3D三维旋转矩阵矢量

  • V1 = R * V1
  • V2 = R * V2
  • V1和V2相互正交。

两对夫妇矢量都因为单个夫妇矢量的使用(V1和其转化载体,V1)不会带来足够的信息来构造旋转矩阵R.一个很好的例子是为了说明是例如V1躺在R.

的旋转轴线的想法是建立两个部分旋转矩阵R1和R2,以获得最终的矩阵R.

实现是使用GLM和R1和R2是计算如下

R1 = math::mat3_cast(math::rotation(V1, V1t)); 
R2 = math::mat3_cast(math::rotation(V2, V2t)); 

我的猜测是,计算在R之前,沿轴线V1旋转应当从R2给予R2' 隔离。然后R将是R1 * R2'。

我的问题是

  • 首先,这是可行的,从转换的3D矢量的两对夫妇演绎出旋转矩阵? (这两个原始矢量V1和V2取为互相正交的)
  • 如何沿着从旋转矩阵的任意轴提取旋转?

你是在正确的轨道上,但我会改变这一点。

也许尝试这种方式:

  • 计算R1从(V1,V1T)
  • 旋转V2与R1,结果是V2R
  • 计算从(V2R,V2T)
  • 串联R1 R2和R2得到最后的旋转

它应该比试图沿某些轴分离旋转更容易。