Chronology Current Month Current Thread Current Date
[Year List] [Month List (current year)] [Date Index] [Thread Index] [Thread Prev] [Thread Next] [Date Prev] [Date Next]

[Phys-L] Re: compound rotation

The recent question about "area vector" was the second time in
24 hours that somebody asked me a question for which geometric
algebra was the answer. Let me now tell you about the other one.

Suppose you are working in VRML (virtual reality modeling
language) and you need to rotate the camera or rotate some
object. You conceive of it as a compound rotation, i.e.
some angle of rotation about one axis, followed by some other
angle about some other axis. So far so good, but you would
like to express this as a *single* rotation. You know it
will be some third angle around some third axis, but just
what exactly?

Far and away the simplest way to proceed is to convert each
rotation to the geometric algebra representation, i.e.
express it as a rotor, i.e. scalar plus bivector, i.e.
scalar plus quaternions. Then multiply the two rotors.
Finally convert back to the axis-plus-angle representation
that VRML likes. Each of these steps is quite straightforward.
The process is bulletproof, by which I mean there is no
danger of "gimbal lock" such as you might get in the Euler
angle representation, due to singularities at the poles.

For details, see

If you like things reeeally explicit, here is the perl code
to carry out the calculation:
Phys-L mailing list