MATLAB Answers

help With rotating vectors

3 views (last 30 days)
random1072
random1072 on 21 Apr 2020
Answered: James Tursa on 7 May 2020
trying to rotate my quaternion quat_1 about quatternion quat_2_new and find new position. Was curious how to do this.

  0 Comments

Sign in to comment.

Answers (1)

James Tursa
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

Sign in to comment.


Translated by