|
Boost : |
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
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk