Are quaternions actually useful in 3d rotation
I'm trying to figure out how quaternions are useful in 3d rotation. From the books I've read on the topic, quaternions are essentially 4d vectors. When used to store rotations, one of the quaternion values needs to be zero. Thus we have a 3d vector with a zero tagging along. Therefore, can't we just use ordinary 3d vectors?
[edited by - spiffgq on September 7, 2002 8:05:43 PM]
Gimbal Lock. (look it up)
basicaly if you don''t have that "extra zero" in there the result of the rotation will get funky on you... if I rember right one of the problems is when rotating between certen angles further rotations will start to cancel...
they''s several "fixs" to this but the cleanest seems to be quaternions....
note: if I''m incorrect on anything then feel free to correct me =) (still a little unshure about this)
basicaly if you don''t have that "extra zero" in there the result of the rotation will get funky on you... if I rember right one of the problems is when rotating between certen angles further rotations will start to cancel...
they''s several "fixs" to this but the cleanest seems to be quaternions....
note: if I''m incorrect on anything then feel free to correct me =) (still a little unshure about this)
quote:When used to store rotations, one of the quaternion values needs to be zero.
Where did you see that?
quote:Original post by Great Milenko
Gimbal Lock. (look it up)
basicaly if you don''t have that "extra zero" in there the result of the rotation will get funky on you... if I rember right one of the problems is when rotating between certen angles further rotations will start to cancel...
they''s several "fixs" to this but the cleanest seems to be quaternions....
note: if I''m incorrect on anything then feel free to correct me =) (still a little unshure about this)
I heard about gimbal lock, but I thought that was only if you described multiple rotations using three scalar values to define the angle to rotate about each primary axis. Although I guess that is what the vector does in function, but I don''t see how storing that extra zero helps the rotation.
quote:Original post by zppzWhen used to store rotations, one of the quaternion values needs to be zero.
Where did you see that?
Somewhere I read that the rotation quaternion needed to be a unit quaternion and somewhere else I read that a unit quaternion was a quaternion with a unit vector and a scalar zero.
On second though, my notes seem to indicate that it might be the result thats the quaternion with the zero scalar. I don''t remember where exactly I got this information. It was in some books on 3d graphics theory, so let me root through them to see if I can''t find what I''m referring to. (I need to take better notes )
All of these books explain it so differently that it seems to conflict each other, and none of them give practical examples of implementing quaternions for rotation.
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement