Kinematics Intro
:a branch of
dynamics that deals
with aspects of
motion apart from
considerations of
mass and force
Merriam-Webster
Animation
•Scripting •Procedural
Kinematics •Particle Systems (Reeves ‘83)
•Behavioral Animation (Reynolds
(specify poses ‘87)
without regard to •Intelligent Systems
(game/strategy/AI)
forces)
•Physically Based Modeling (water,
gravity)
•Input Driven (face animation)
•Algorithmic (e.g. Plant growth)
Labanotation
(from dance); similar to Jack’s talk about motion
indexing -
• where are body parts relative to each other?
• put together in a series of key frames
Two Ways
• Forward Kinematics: apply
transformation to each node to
determine pose.
• Reverse Kinematics: given desired
position of effectors, find necessary joint
angles to achieve pose.
• Specify pose by moving limbs, then calculate
transformations
Which is associated with motion capture?
Hierarchical Kinematic
Modeling
• Closely related to robotics
Left Right
L.
Arm Arm R.
Elbow Elbow
L. Leg
R. Leg
L. Knee R. Knee
L. Ankle R. Ankle
L. Wrist R. Wrist
L. R.
fingers fingers
Using the Hierarchical Model
• Node x has matrix for transformation
• Used by all nodes in the tree
• Recursively walk tree: matrix for node
applied to everything in subtree (depth
first or breadth first?)
• Joints may have one or more degrees
of freedom
– Rotate about i,j,k, translate
Small Example
L
L2
L2 0 L1
L L1
0 To T1 T2
Lo L1 L1
T0 T1 T2
• Each transformation is relative to member above it
in hierarchy
• 1st matrix: T0, Vertex V0 in L0 is moved V0’ = T0V0
• 2nd Matrix: T0 T1
• 3rd Matrix: T0 T1 T2
• What if there was rotations? Be careful of order!!
Joints
1. Revolute joints - allow you
to rotate
2. Prismatic joints (pistons)
Who (in the &!*~^) is Denavit-
Hartenberg
• We like to define points in a local
coordinate frame
• Need a deterministic method for
converting from coordinates in one
frame to another
• Especially, parent to child in a hierarchy
Denavit-Hartenberg Notation
• For 1 axis of rotation
• Link length: distance down the x axis
from one joint to the next
• Joint angle:
Xi+1
Zi Zi+1
Linki Өi+1 Xi
Joint Parameters
• Joint angle Өi: angle between xi-1 and xi
about zi
• Link length ai: distance from zi to zI+1 along xi
• Link offset di : distance from xi-1 to xi along z
• Link twist i: angle between zi and zI+1
about xi Here, d is
Xi+1 zero, and
Zi Zi+1
alpha is zero
ai Өi+1 Xi
Non-Planar Joints
Zi
Zi+1
Zi dI+1
Өi+1