Re: [Algorithms] Quaternions in IK
Brought to you by:
vexxed72
From: Auday <au...@so...> - 2000-09-07 08:21:33
|
Actually the main problem with Eulers is the sequence dependency , so if you know the sequence you want to get the Eulers in ( from a quaternion or a matrix ) then you will usually have only 2 solutions , for example if your sequence is ZYX then you will get 2 solutions for Y , one less than 180 and the other is greater then 180 , and selecting 1 of them will give you 1 solution for each of X and Z . I agree with Ron that Euler angles are not a natural representation of rotation, they are just like applying 3 rotations in quaternions or matrices, and obviously you have the same problem of dependency if you apply any 3 matrices or quaternions. We use the axis aligned Eulers just because they make sense and they give us better imagination of the rotation . For your question Ron , sorry I didn't understand what you meant , maybe if you explain I can answer :) Thanks Auday >It is not a question of loss of information, but of absence of >information from the start. What I mean by this is that the real >geometric thing is the rotation (or orientation) not an Euler angle >construction of it. The rotation does not uniquely determine the >Euler angles. If FREE rotation is allowed (think a ship on the sea or >an aircraft or spacecraft) , then a given rotation can be decomposed >into Euler components in infinitely many ways. > >So if you start with an Euler construction to get a rotation matrix >(or a quaternion) then use a routine such as one that Dave Eberly >points to on his site to get Euler angles from that quaternion or >matrix, then there is no guarantee that they will be the same Euler >angles you started with....The rotation does not determine the Euler >angles. > >On the other hand, for the systems at issue in IK problems, viz., >linked structures with constrained joints, such as robots and animated >characters, the rotation of the end effectors are NOT free, but >constrained. Typically, the Euler axes DO have a mechanical reality in >the construction of your robot as a linkage of defined 1-DOF joints, >and the range of rotation of each joint is limited. In many such >cases, no doubt, the Euler angles ARE uniquely determined by the >orientation of the end effector, and in principle one could find an >algorithm to determine them from the rotation. But it would be >fortuitous if one of Dave's routines gave the correct decomposition in >your particular case. > >These considerations lead to a question that keeps coming up for me, >but for which I have not found the answer. I've posted it on various >forums and lists from time to time, without response. I'm going to >ask it again here, because at least a few will understand its >statement, and maybe Dave or Jeff's grad student or someone will >remember seeing it discussd somewhere: In the rotation group SO(3), >how can one characterize a maximal neighborhood of the identity that >has a unique analytic Euler angle parametrization? > >_______________________________________________ >GDAlgorithms-list mailing list >GDA...@li... >http://lists.sourceforge.net/mailman/listinfo/gdalgorithms-list |