Solved

quaternion to euler-angles conversion

Posted on 2004-08-19
1
2,117 Views
Last Modified: 2013-12-26
hey guys, im working with a quaternion-class to store and to handle my rotations, in that class
i have a conversion method to make a quaternion from eulers:

where eulers are given:
pitch -> rotation around x-axis
yaw -> rotation around y-axis
rool -> rotation around z-axis

the eulers where made with Y-rotation first, then X-rotation, then Z-rotation,
that's why the method has the suffix "YXZ", here it is:

void CQuaternion::MakeFromEulerYXZ( const CEulerAngles &rot )
{
      const float fltPitch2 = rot.GetPitch() * 0.5f;
      const float fltYaw2   = rot.GetYaw() * 0.5f;
      const float fltRoll2  = rot.GetRoll() * 0.5f;

      const float cosY2 = g_Math.Cosf( fltYaw2 );
      const float sinY2 = g_Math.Sinf( fltYaw2 );
      const float cosP2 = g_Math.Cosf( fltPitch2 );
      const float sinP2 = g_Math.Sinf( fltPitch2 );
      const float cosR2 = g_Math.Cosf( fltRoll2 );
      const float sinR2 = g_Math.Sinf( fltRoll2 );

      x = cosR2 * sinP2 * cosY2 + sinR2 * cosP2 * sinY2;
      y = cosR2 * cosP2 * sinY2 - sinR2 * sinP2 * cosY2;
      z = sinR2 * cosP2 * cosY2 - cosR2 * sinP2 * sinY2;
      w = cosR2 * cosP2 * cosY2 + sinR2 * sinP2 * sinY2;
}

now i need the reverse conversion, from quaternion to euler, which means
x,y,z,w are given and i need the eulers( pitch, yaw, roll)

any suggestions?




0
Comment
Question by:ikework
1 Comment
 
LVL 45

Accepted Solution

by:
sunnycoder earned 350 total points
ID: 11849510
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Artificial Intelligence comes in many forms, and for game developers, Path-Finding is an important ability for making an NPC (Non-Playable Character) maneuver through terrain.  A* is a particularly easy way to approach it.  I’ll start with the algor…
As game developers, we quickly learn that Artificial Intelligence (AI) doesn’t need to be so tough.  To reference Space Ghost: “Moltar, I have a giant brain that is able to reduce any complex machine into a simple yes or no answer. (http://www.youtu…
Video by: Mark
This lesson goes over how to construct ordered and unordered lists and how to create hyperlinks.
As a trusted technology advisor to your customers you are likely getting the daily question of, ‘should I put this in the cloud?’ As customer demands for cloud services increases, companies will see a shift from traditional buying patterns to new…

920 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

14 Experts available now in Live!

Get 1:1 Help Now