quaternions dummies


(rkimball) #1

Can anyone explain quaternions in plain english, ie how a rotation is derived from the wxyz components. I did some browsing on the net, and I understand the algebra behind quaternions, but i am having some difficulty translating them into 3d space. There is an actual page called “quaternions dummies” but the links i found were dead.

Any help would be greatly appreciated.

thanks,

randy


(Hos) #2

Usually the more natural derivation of a quaternion from a rotation
is when you express the rotation as an axis in space and an angle
to rotate through around that axis. If you’ve done your homework
you’ve probably seen such formulas – they are simple and elegant.
On the other hand, the relation between Blender’s Euler angles and
quaternions is relatively ugly, and intuitive (most things related to Euler
angles are) and a formula that converts between the 2 is harder to
find.

Before Blender got quaternion rotations I wrote my own quaternion
class in python for a lark – maybe there is something in the code
that will make it clearer:

http://www.ualberta.ca/~cwant/blender/rollerA10.zip

Chris

P.S. Most CG papers that deal with quaternions usually reference a
paper from the mid-80’s by Ken Shoemake (I believe this was the
first instance of quaternions being used in CG) – if you live in a college
town you might want to see if you can go to the campus library and
photocopy his paper.