How does a quaternion differ from a position in terms of algebraic structure?

305 Views Asked by At

For two positions, I can subtract one from another to get a vector; I can take combination of them to get another position.

My question is, can I treat quaternions in the same way?

To be more specific,

  • What is the quaternion equivalent to a vector?
  • What is the quaternion equivalent to position combination(barycentric sum)?
  • Can I have a quaternion Bézier curve? If yes, is it invariant under some kinds of transformation?
  • I think there must be a word to describe the relation between quaternions and positions. What is it? (I expect an "iso_____" or "homo_____")
2

There are 2 best solutions below

3
On

Well, the answer is yes and no. I assume you're comparing the real quaternions ($\mathbb{H}$) as opposed to the group of 8 elements ($Q$).

Main Similarity:

The quaternions $\mathbb{H}$ do form a vector space of dimension $4$ (with basis $\{1, i, j, k\}$) over the reals $\mathbb{R}$. This means you can add them, multiply them by a scalar, and all the theorems and propositions in linear algebra about vector spaces apply to $\mathbb{H}$ as well.

Main Difference:

You can multiply quaternions, and it's a good example of noncommutative multiplication. The basic rules are:

  • $i * j = k$
  • $j * i = -k$
  • $j * k = i$
  • $k * j = -i$
  • $i * k = -j$
  • $k * i = j$

Also, the reals do commute with respect to quaternions, that is, $r * q = q * r$ so long as $r \in \mathbb{R}$. This is not true for vectors, as you normally don't multiply them. To be precise, $\mathbb{H}$ is a Division Ring, or a skew field, where $\mathbb{R}^{n}$, your position vectors, are not.

So in an attempt to answer your questions:

  • A quaternion is an example of a vector. You can do anything with a quaternion you can do with a vector.
  • Yes, quaternions are similar to position vectors in that you can use weighted sums to obtain new quaternions that are, in some sense, "in-between" the two. So yes, $\omega q_{1} + (1-\omega)q_{2}$ is a valid quaternion.
  • You probably can, but the quaternions are different enough from position vectors that there would either be no use for them, or if there were, it would be an unintuitive one. I would venture to say that a quaternion Bézier curve would not enjoy the same applications in computer graphics that a real Bézier curve would.
  • Words such as homomorphism and isomorphism usually require context on the underlying algebraic structure. For example, there is isomorphism as groups and isomorphism as rings. The quaternions $\mathbb{H}$ are isomorphic to 4-dimensional space $\mathbb{R}^{n} as vector spaces.
0
On

The quaternions form a real vector space (of dimension 4). So you know how to add two quaternions, and multiply a quaternion by a scalar (a real number). So then you can form linear combinations, which lead to linear interpolation, barycentric coordinates, and so on. Points on Bézier curves are really just convex combinations of the control points, so these work, too. By the same reasoning, you can construct spline curves in quaternion space.

A quaternion represents an orientation in 3D space, so a quaternion spline represents a sequence of orientations that are varying smoothly as a function of some argument (which you can regard as time). Spline quaternions are often used in this way to represent motions in animation. Interpolating quaternions works better than trying to interpolate Euler angles or rotation matrices. Look up quaternion slerp, for example.