Archived

This topic is now archived and is closed to further replies.

Are quaternions actually useful in 3d rotation

This topic is 5575 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

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]

Share this post


Link to post
Share on other sites
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)

Share this post


Link to post
Share on other sites
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.

Share this post


Link to post
Share on other sites
quote:
Original post by zppz
[quote]When 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.

Share this post


Link to post
Share on other sites