子弹物理中setEulerZYX()的目的是什么?

时间:2015-02-12 18:34:40

标签: bulletphysics euler-angles ragdoll

我一直在调查RagdollDemo并且在基础矩阵中使用setEulerZYX()的部分陷入困境。

transform.setIdentity();
transform.setOrigin(btVector3(btScalar(-0.35), btScalar(1.45),     btScalar(0.)));
  transform.getBasis().setEulerZYX(0,0,M_PI_2);
  m_bodies[BODYPART_LEFT_UPPER_ARM] = localCreateRigidBody(btScalar(1.), offset*transform, m_shapes[BODYPART_LEFT_UPPER_ARM]);

我做了一些研究,但还不能完全理解这个函数究竟做了什么以及为什么需要它。任何帮助都会非常好。

1 个答案:

答案 0 :(得分:1)

这是设置身体旋转的一种方式(还有其他方式)。

http://bulletphysics.org/Bullet/BulletFull/classbtMatrix3x3.html#a0acce3d3502e34b4f34efd275c140d2a

所以这是将其设置为0,0,M_PI_2M_PI_2Pi/2表示这是x轴上旋转1/4圈,即90度。