0
$\begingroup$

The question: Is the multiplication result of two unit-length quaternions "perpendicular" to both operands? "Perpendicular" means that dot product between either operand and multiplication result will be zero (as with vector3 cross-product). Operands (say q1 and q2) are not equal to each other.

Reason for asking: I'm trying to understand quaternion rotations from purely geometric point of view (even if it is 4d). For example, 3x3 affine transform matrix in 3d space can be represented as a new coordinate system into which a point should be placed, and each row(or column - depending on notation) of such matrix will represent a vector of a coordinate axis of the "new" coordinate system. So to transform a point with matrix, you simply take every vector that represents axis of a "new" coordinate system, scale it using numeric value of corresponding x/y/z of the point to transform, and add them all together to get new point. Such representation is very easy to understand. I'm looking for similar explanation of quaternions, and If I get confirmation that result of quaternion multiplication is "perpendicular" to both operands that would be at least something to get started.

Regards, SigTerm.

  • 0
    @SigTerm Note that once you have such$a$line L and a 3-space H, the 3 space H is invariant for multiplication and all you are doing is cross product in H; and any 2-space P containing the line L is invariant, and all you are doing is a complex multiplication in that plane, a unit imaginary quaternion in $P\cap H$ playing the role of $i$. In general it's some combination of the two... but not terribly geometric.2011-03-30

3 Answers 3

-1

"I'm trying to understand quaternion rotations from purely geometric point of view (even if it is 4d)."

Arbitrarily pick a quaternion A as the operator, and the other B as the data.

The operator A does two separate complex rotations. Take the vector part of A. That is the axis for one complex rotation. It rotates B around that axis.

At the same time, B has a separate plane, defined by A's vector and the scalar. A also rotates B around that axis, by the same amount.

A's scalar (divided by A's euclidean magnitude) is the cosine of the angle for both rotations.

If you apply A on the right instead of on the left, BA instead of AB, everything is the same except one term, and the result is that the complex rotation around the vector part of A goes in the opposite direction.

You don't get gymbal lock because you do both rotations at once.

3

let $x=ai+bj+ck, y=di+ej+fk$ (pure quaternions). then $xy=-(ad+be+cf)+(bf-ce)i+(af-cd)j+(ae-bd)k$. if $u=(a,b,c), v=(d,e,f)$ then the real part of $xy$ is $-u\cdot v$ and the "imaginary" part of $xy$ is $u\times v$.

2

No.

Also, keep in mind that there are several different naming conventions in use for quaternions and that they are often used to represent motions in $\mathbb{R}^3$, not $\mathbb{R}^4$. By "unit length quaternions" you may mean quaternions of the form $a_0 + a_1i +a_2j + a_3k$ such that $\sum_ia_i^2 = 1$. However, quaternions are often broken up into a "scalar part", $a_0$, and a "vector part", $a_1i + a_2j + a_3k$, and used in this way to model three dimensional space. With this convention, a "unit vector quaternion" is one of the form $a_1i + a_2j + a_3k$ such that $a_1^2 + a_2^2 + a_3^2 = 1$.

The cross product in $\mathbb{R}^3$ can however be defined in terms of quaternions. Given two quaternions $a$ and $b$, their cross product is $.5(ab - b^*a^*)$, where $^*$ denotes conjugation.