【问题标题】:Convert pitch rotation to roll rotation in OpenGL matrix在OpenGL矩阵中将俯仰旋转转换为滚动旋转
【发布时间】:2020-11-09 10:00:50
【问题描述】:

我有 OpenGL(右手坐标,Y 向上,-Z 向前)4x4 变换矩阵,可以正确旋转偏航,但俯仰和滚动被翻转。位置也是正确的。

有没有办法将围绕 z 轴的旋转翻转为实际围绕 x 轴旋转,反之亦然?

Transformation matrix [
  x1 y1 z1 w1 
  x2 y2 z2 w2
  x3 y3 z3 w3
  0  0  0  1
]

我试图从矩阵中分解出 T R S 并仅将旋转矩阵与坐标系更改矩阵相乘,但没有成功。例如。我试过了:

Identity matrix with x and z flipped [
  0 0 1
  0 1 0
  1 0 0
]

【问题讨论】:

标签: opengl matrix rotation coordinates


【解决方案1】:

矩阵中的索引不对应某个轴,还不如标注一下

[ e11 e12 e13
  e21 e22 e23
  e31 e32 e33 ]

查看本教程 http://ogldev.atspace.co.uk/www/tutorial07/tutorial07.html

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-02-18
    • 1970-01-01
    • 1970-01-01
    • 2014-02-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多