help With rotating vectors
1 view (last 30 days)
Show older comments
trying to rotate my quaternion quat_1 about quatternion quat_2_new and find new position. Was curious how to do this.
0 Comments
Answers (1)
James Tursa
on 7 May 2020
We need more detail. Your quat_2_new is a unit quaternion, so it can be used for rotations. If your quat_1 is just supposed to be an arbitrary 3D vector expressed as a quaternion, then rotating quat_1 could be either of these two expressions
quat_1_rotated = inv(quat_2_new) * quat_1 * quat_2_new
or
quat_1_rotated = quat_2_new * quat_1 * inv(quat_2_new)
Where the * is a quaternion multiply. Which of these expressions applies in your situation depends on what these quaternions represent (vector rotation or coordinate transformation) and what the quaternion convention being used is.
0 Comments
See Also
Categories
Find more on Quaternion Math in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!