From: Jeff Flinn (TriumphSprint2000_at_[hidden])
Date: 2006-06-13 08:17:55


Andy Little wrote:
> "me22" <me22.ca_at_[hidden]> wrote in message
> news:fa28b9250606111226m1809c81ai14d096e010e718f1_at_mail.gmail.com...
>> On 6/11/06, Andy Little <andy_at_[hidden]> wrote:
>>> OK. So going back to the original point. The intent in PQS is to
>>> use a quaternion solely for representing a rotation in 3D space.
>>> Putting quaternion in a 3D namespace makes sense to me from that
>>> viewpoint and should help to clarify its intended purpose.
>>>
>> In that case I think it should be called unit_quaternion to emphasise
>> the point. It would also make it clear that the implementation is
>> ensuring and assuming that w*w+x*x+y*y+z*z is very close to 1.
>
> OK. This functionality will surely depend on the implementation of
> vect * quat ? In boost::quaternion the quaternion seems to be
> normalised during the calculation AFAICS. See
> <libs/math/quaternion/HS03.hpp>. I have to confess that I don't know
> enough about quaternions to speak with authority. As Janek Kozicki
> brought up yade http://yade.berlios.de/. My current plan is to look
> at that as an example useage. Again only for rotations. I'm not even
> sure yet how I can test the calculations on quaternions. I need to
> understand more about how they are constructed, starting maybe from
> an [axis-vector,angle] type maybe, simply because I can visualise
> that easier than 4 dimensions :-)

IIRC, you can interpret the first 3 elements as an axis of rotation, and the
last element is the amount of rotation about this vector.

Jeff Flinn