200 likes | 260 Vues
Forward Kinematics. Q 2. Q 1. Q 3. Specifying a Pose. Forward Kinematics. Hierarchical model - joints and links. Joints - rotational or prismatic. Joints - 1, 2, or 3 Degree of Freedom. Links - displayable objects. Pose - setting parameters for all joint DoFs.
E N D
Q2 Q1 Q3 Specifying a Pose
Forward Kinematics Hierarchical model - joints and links Joints - rotational or prismatic Joints - 1, 2, or 3 Degree of Freedom Links - displayable objects Pose - setting parameters for all joint DoFs Pose Vector - a complete set of joint parameters
Animate a Pose Interpolate pose vectors
q Joint Representation Degree of Freedom DOF Joint Limits
q y w Joint Representation Multiple Degrees of Freedom Joint Limits gimbal lock Axis-angle quaternions
q y w Joint Representation Note User interface representation may not be the same used for internal representation and operations
Link and Node Representation transformation transformation data geometry
How to Represent Articulators Joint-Link Hierarchies Define Link data so its point of rotation is at the origin Rotate the link Position it relative to its parent link in the hierarchy Put it through all the transformations of its parent link
Tree Representation Transformations Joint Arc NodePtr Transformations Node DataPtr Link LinkPtr[ ]
Tree Traversal M = I M = T0 M = T0*T1.1 M = T0*T1.1*T1.2 T0 M = T0*T1.1 M = T0 T1.1 T2.1 M = T0*T2.1 T2.2 T1.2 M = T0*T2.1*T2.2
Link and Node Representation Transformation (fixed) Transformation (changeable) transformation data geometry
Tree Traversal M = I T0 M = T0 T1.1 M = T0*T1.1*R1.1 T2.1 R2.1 R1.1 M = T0*T1.1*R1.1*T1.2*R1.2 M = T0*T1.1*R1.1 T2.2 T1.2 M = T0 R2.2 R1.2 M = T0*T2.1*R2.1 M = T0*T2.1*T2.2*R2.2
Tree Traversal T0 How do you represent more than one degree of freedom at a joint? T1.1 T2.1 R2.1 R1.1 T2.2 T1.2 Zero length segments Between 1 DoF joints Multiple DoF transformation at joint R2.2 R1.2
Joint Transformations Rotation representation: matrix? Euler angles? Quaternions? Impose joint limits on rotations? Need complex functions to model human figure limits Could have translational joints, e.g., telescoping legs Pose vector: vector of all joint angles [q1 q2 q3 … qn ] Interpolate between poses gimbal lock possible if 3 DoF joints
Forward Kinematics Define Joint-Link Hierarchy Define sequence of keyposes with corresponding times For given time t, use keyposes to interpolate pose at time t Traverse tree hierarchy using pose vector to supply angles
value Use key-values With key-poses - entire pose vector is specified Better to allow independent keys for each articulation variable (or avar) Sometimes called track-based frames