【问题标题】:Getting and Setting Pitch Yaw Roll from/to OpenGL modelview matrix从/到 OpenGL 模型视图矩阵获取和设置 Pitch Yaw Roll
【发布时间】:2011-02-04 01:06:40
【问题描述】:

我很确定设置的代码应该是这样的:

function setPYR(float pitch, float yaw, float roll) {
    glLoadIdentity();
    glRotatef(pitch, 1, 0, 0);
    glRotatef(yaw, 0, 1, 0);
    glRotatef(roll, 0, 0, 1);
}

如何从当前的模型视图矩阵中获取俯仰、偏航和滚动?

【问题讨论】:

  • 为什么不把它们保存在变量中,然后返回保存的值?
  • 在大多数情况下,我一开始没有保存它们

标签: c opengl matrix


【解决方案1】:

【讨论】:

  • 此链接表明 Q36 提供了从欧拉角(偏航角、俯仰角、滚动角)到模型视图矩阵的正确方法。但是,如果我没记错的话,这种方法由于万向节锁定而存在问题,对吧? (至少我在按照Q36实现的时候遇到了云台锁定问题。)走这条路不是更好吗:Q60。如何将欧拉旋转角转换为四元数? 然后Q54.如何将四元数转换为旋转矩阵??也许this 也有帮助。
猜你喜欢
  • 2019-06-19
  • 2018-11-19
  • 1970-01-01
  • 1970-01-01
  • 2021-05-10
  • 2013-06-02
  • 2013-12-25
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多