How Can I Apply a Quaternion Rotation on a Local Axis After an Initial Rotation?

Registred
Messages
4
Reaction score
0
Hey,

Once again, I got a question about quaternions.
Say I have an initial rotation Q1. I now want to rotate Q1 on the X and then on the Y axis. BUT: The Y rotation should apply to the local Y axis which was given in Q1.

The problem is:
If i rotate Q1 by the X-rotation Q2, then the Y axis changes for Q1*Q2. So, since quaternion multiplication is noncommutativ, if I then apply the Y-rotation Q3, I don't rotate about the original Y axis of Q1.

How can I rotate quaternions this way?

Greetings!
 
Mathematics news on Phys.org
I assume that the rotations around X and Y will be achieved by applying by two separate quaternion increments, call them QX and QY. Assuming this is the case I think you need to proceed as follows;

1. apply the QX rotation to Q1, call the result R1.
2. apply the QX rotation to the QY rotation increment - this transforms the Y axis rotation from the original frame of reference to the frame that exists after you've done the X rotation. Call the modified QY increment QY'
3. apply QY' to R1
 

Similar threads

  • · Replies 1 ·
Replies
1
Views
1K
  • · Replies 6 ·
Replies
6
Views
5K
  • · Replies 1 ·
Replies
1
Views
3K
  • · Replies 2 ·
Replies
2
Views
2K
  • · Replies 3 ·
Replies
3
Views
3K
  • · Replies 1 ·
Replies
1
Views
2K
  • · Replies 7 ·
Replies
7
Views
2K
Replies
67
Views
6K
  • · Replies 2 ·
Replies
2
Views
2K
  • · Replies 8 ·
Replies
8
Views
4K