Pergunta

I have a quaternion for an object's starting rotation, and a quaternion for an object's ending rotation, and I am SLERPing the shortest rotation between the two.

How can I figure out the magnitude of the rotation between the object's start and end rotations?

Foi útil?

Solução

Let's introduce two quaternions qStart and qEnd. Magnitude of rotation between them can be expressed as a quaternion:

qRot = qEnd * qStart.inversed();  

and the exact angle of rotation can be extracted as:

2*atan2(qRot.vec.length(), qRot.w);
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top