Kinematical Animation

Save this PDF as:
 WORD  PNG  TXT  JPG

Size: px
Start display at page:

Download "Kinematical Animation. lionel.reveret@inria.fr 2013-14"

Transcription

1 Kinematical Animation

2 3D animation in CG Goal : capture visual attention Motion of characters Believable Expressive Realism? Controllability Limits of purely physical simulation : - little interactivity - high complexity for expressive characters

3 animation in 3D CG Two heritages Cartoons How to represent motion on a 2D visualization Robotics Mathematics foundation of 3D motion

4 Heritage from cartoon Sampled motion, film framework (24 images per second) Animation workflow from photographs (Muybridge, Marey)

5 Early Mathematics of motion Etienne-Jules Marey ( ) physiologist inventor of chronophotography (1882) cinematography invented in 1895 (L. Lumière) The graphical method : one motion can be represented by a curve

6 Heritage from robotics Chain of rigid articulations + Forward kinematics + Inverse-Kinematics algorithm + Motion planning Animation skeleton : appropriate degrees of freedom for expressivity

7 3D animation : interpolation+skeleton Keyframes and tangents

8 Interpolation Interpolation of a 1D-scalar value One function p(u) with unknown parameters, Typically cubic polynomial: p(u)=σ n=0..3 a n u n known constrains on points { u i, (d n p/du)(u i )= b i } 4 are enough for exact cubic polynomial Direct solving for a n p(u) is thus known for every u

9 Interpolation Practical case : Hermit polynomial (spline) C 1 continuity between sets of 2 points 2 positions and tangents at these positions p(u) = [ a 0 a 1 a 2 a 3 ] [ 1 u u 2 u 3 ] t = A t Q(u) p(0) = A t Q(0) = b 0 p (0) = A t Q (0) = b 1 p(1) = A t Q(1) = b 2 p (1) = A t Q (1) = b 3 A t [ Q(0) Q (0) Q(1) Q (1) ] = [ b 0 b 1 b 2 b 3 ] t A t Q 4x4 = B t => A t = B t Q -1 p(u) = B t Q -1 Q(u) p( u=(t-t0)/(t-t1) )

10 Interpolation Interpolating 3D rotation Canonic representation : SO(3) matrix but M 0,M 1 SO(3) > (1-α)M 0 +αm 1 SO(3) Represent SO(3) matrix with Euler angles any rotation in R 3 can be represented by 3 angles M = R x,ψ R y,θ R z,ф = Multiplication order matters! Local transformation Rzyx : yaw, pitch and roll can be R z,ψ R y,θ R z,φ => Animation by interpolating angles

11 Interpolating 3D rotation Limitations of Euler angles Non-uniqueness of position and path [θ x,θ y,θ z ]=[0,0,0] [θ x,θ y,θ z ]=[0,0,0] [θ x,θ y,θ z ]=[π,0,0] M = [θ x,θ y,θ z ]=[0,π,π] M =

12 Interpolating 3D rotation Limitations of Euler angles Gimbal lock θx, [θ x,θ y,θ z ]=[0,0,0] [θ x,θ y,θ z ]=[0,π/4,0] [θ x,θ y,θ z ]=[0,π/2,0] 1 degree of freedom is lost : change in θ x change in θ z

13 3D rotation Axis-angle any rotation in R 3 is a planar rotation around an axis strong link with quaternion n v = R θ,n v = cosθ v + sinθ n v + (1- cosθ)(v n) n R θ,n = cosθ I + sinθ [n] + (1- cosθ)nn t v o θ v [n] = 0 -n z n y n z 0 -n x -n y n x 0 Rodrigues formula R θ,n = exp( [θn] x ) = I + Σ k=1 [θn] x k /k!

14 Quaternion H: Extension of standard complex q = [ s, x, y, z ] = s +ix + jy + kz = [ s, n ] with i 2 =j 2 =k 2 =ijk=-1 q.q = [ ss n.n, s n + s n + n x n ] q* = [s, -x, -y, -z ] q 2 = q. q* = s 2 + x 2 + y 2 + z 2 q -1 = q*/ q 2 q =1 q = [ cosθ, (sinθ)n ] H 1 with n R 3 and n =1 Any rotation in R 3 can be represented in H 1 x R 3, x = R θ,n x [0,x ] = q[0,x]q -1 with q = [ cos(θ/2), sin(θ/2)n ]

15 Interpolating 3D rotation Quaternion Linear interpolation in H does not work well q(t) = (1-t).q 0 + t.q 1 Angular velocity is not constant q 0 q 1 Spherical linear interpolation is fine (SLERP) q 0 q 1

16 Interpolating 3D rotation Log and exp in H 1 q = [ cosθ, (sinθ)n ] = exp([0,θn]) log(q) = [0,θn] q t = exp(t.log(q)) dq t /dt = logq q t dq t /dt = logq = [0,θn] = θ Application to SLERP (q i : unit quaternion, p i : geometrical point on sphere) SLERP(q0,q1,t) = (q 1 q 0-1 ) t q 0 SLERP(p0,p1,t) = (sin[(1-t)ω]p 0 + sin[ωt]p 1 )/sinω with cosω = p 0 p 1

17 Two fundamental cases Unconstrained motion waving arms, nodding head, etc => Forward Kinematics (FK) Constrained motion grasping an object, walking on the ground, etc => Inverse Kinematics (IK)

18 Forward Kinematics Direct application of 3D framework

19 Inverse Kinematics Articulated object Translational and rotational links Goal to reach M

20 Inverse Kinematics input : goal to reach (M) model parameter : Θ = ( θ 1, θ 2,, t 1, t 2, ), model parameters f(θ) position of kinematic chain end Find Θ /M=f(Θ ) 2 or 3 rotations: direct computation in R 2 or R 3 N articulations :?

21 Difficulties Two solutions : Range of solutions : No solutions :

22 f : direct kinematics Concatenation of matrix transforms f (Θ)= R 1 (θ 1 )T 1 (t 1 )R 2 (θ 2 ) T 2 (t 2 ) M 0 M 0 : position in rest pose (no rotations) Non linearity because of rotations

23 Zero of non-linear function Find Θ / f(θ)-m = 0 Linearization : given a current Θ and error E = f(θ)-m find h / E = f(θ+h) - f(θ) = f (Θ)h => h = f (Θ) -1 E => Θ := Θ + h iterate

24 Linearization Taylor series : Multivariate case : J Jacobian of f, linear form in h H Hessian of f, quadratic form in h

25 Jacobian Matrix of derivatives of several functions with severable variables : J:3xN matrix => not squared Use Pseudo-inverse for inversion : J + = J t (JJ t ) -1 if N>3 or J + = (J t J) -1 J t if N<3

26 Algorithm inversekinematics() { start with current Θ; E := target - computeendpoint(); for(k=0; k<k max && E > eps; k++){ J := computejacobian(); solve J h = E; Θ := Θ + h; E := target - computeendpoint(); } }

27 Joint limits Joint may have limits of variation For example realistic elbow is limited To enforce limits : test for limitation violation cancel parameter if violation in practice, remove column in J compute new J and J + compute new h

28 Adding constrains 1. if KerJ 0, degrees of freedom left to enforce a new constrains Ω JΩ = 0 2. if Θ solves JΘ = E, thus Θ+Ω is also solution J(Θ+Ω) = JΘ +JΩ = E + 0 = E 3. if general constrain C, need to project on KerJ: C p = (J + J I ) C check: J C p = J ( J + J I ) C = ( J J ) C = 0

29 Example: preferred angle Value : Θ pref Constraint C : C i = Θ i -Θ pref Modified algorithm : use h = J + E + (J + J-I)C => preserve convergence

30 Inverse Kinematics Other methods use J t instead of J + theory of infinitesimal works h = J t E use several 1D optimization Cyclic Coordinate Descent => faster but less accurate

31 Inverse Kinematics A good source:

Computer Animation. Lecture 2. Basics of Character Animation

Computer Animation. Lecture 2. Basics of Character Animation Computer Animation Lecture 2. Basics of Character Animation Taku Komura Overview Character Animation Posture representation Hierarchical structure of the body Joint types Translational, hinge, universal,

More information

Metrics on SO(3) and Inverse Kinematics

Metrics on SO(3) and Inverse Kinematics Mathematical Foundations of Computer Graphics and Vision Metrics on SO(3) and Inverse Kinematics Luca Ballan Institute of Visual Computing Optimization on Manifolds Descent approach d is a ascent direction

More information

Introduction to Computer Graphics Marie-Paule Cani & Estelle Duveau

Introduction to Computer Graphics Marie-Paule Cani & Estelle Duveau Introduction to Computer Graphics Marie-Paule Cani & Estelle Duveau 04/02 Introduction & projective rendering 11/02 Prodedural modeling, Interactive modeling with parametric surfaces 25/02 Introduction

More information

Interactive Computer Graphics

Interactive Computer Graphics Interactive Computer Graphics Lecture 18 Kinematics and Animation Interactive Graphics Lecture 18: Slide 1 Animation of 3D models In the early days physical models were altered frame by frame to create

More information

3D Tranformations. CS 4620 Lecture 6. Cornell CS4620 Fall 2013 Lecture 6. 2013 Steve Marschner (with previous instructors James/Bala)

3D Tranformations. CS 4620 Lecture 6. Cornell CS4620 Fall 2013 Lecture 6. 2013 Steve Marschner (with previous instructors James/Bala) 3D Tranformations CS 4620 Lecture 6 1 Translation 2 Translation 2 Translation 2 Translation 2 Scaling 3 Scaling 3 Scaling 3 Scaling 3 Rotation about z axis 4 Rotation about z axis 4 Rotation about x axis

More information

Inverse Kinematics. Ming Yao

Inverse Kinematics. Ming Yao Mathematics for Inverse Kinematics 15 464: Technical Animation Ming Yao Overview Kinematics Forward Kinematics and Inverse Kinematics Jabobian Pseudoinverse of the Jacobian Assignment 2 Vocabulary of Kinematics

More information

Essential Mathematics for Computer Graphics fast

Essential Mathematics for Computer Graphics fast John Vince Essential Mathematics for Computer Graphics fast Springer Contents 1. MATHEMATICS 1 Is mathematics difficult? 3 Who should read this book? 4 Aims and objectives of this book 4 Assumptions made

More information

Two hours UNIVERSITY OF MANCHESTER SCHOOL OF COMPUTER SCIENCE. M.Sc. in Advanced Computer Science. Friday 18 th January 2008.

Two hours UNIVERSITY OF MANCHESTER SCHOOL OF COMPUTER SCIENCE. M.Sc. in Advanced Computer Science. Friday 18 th January 2008. COMP60321 Two hours UNIVERSITY OF MANCHESTER SCHOOL OF COMPUTER SCIENCE M.Sc. in Advanced Computer Science Computer Animation Friday 18 th January 2008 Time: 09:45 11:45 Please answer any THREE Questions

More information

CIS 536/636 Introduction to Computer Graphics. Kansas State University. CIS 536/636 Introduction to Computer Graphics

CIS 536/636 Introduction to Computer Graphics. Kansas State University. CIS 536/636 Introduction to Computer Graphics 2 Lecture Outline Animation 2 of 3: Rotations, Quaternions Dynamics & Kinematics William H. Hsu Department of Computing and Information Sciences, KSU KSOL course pages: http://bit.ly/hgvxlh / http://bit.ly/evizre

More information

animation animation shape specification as a function of time

animation animation shape specification as a function of time animation animation shape specification as a function of time animation representation many ways to represent changes with time intent artistic motion physically-plausible motion efficiency control typically

More information

animation shape specification as a function of time

animation shape specification as a function of time animation 1 animation shape specification as a function of time 2 animation representation many ways to represent changes with time intent artistic motion physically-plausible motion efficiency typically

More information

CS 4620 Practicum Programming Assignment 6 Animation

CS 4620 Practicum Programming Assignment 6 Animation CS 4620 Practicum Programming Assignment 6 Animation out: Friday 14th November 2014 due: : Monday 24th November 2014 1 Introduction In this assignment, we will explore a common topic in animation: key

More information

Animation (-4, -2, 0 ) + (( 2, 6, -4 ) - (-4, -2, 0 ))*.75 = (-4, -2, 0 ) + ( 6, 8, -4)*.75 = (.5, 4, -3 ).

Animation (-4, -2, 0 ) + (( 2, 6, -4 ) - (-4, -2, 0 ))*.75 = (-4, -2, 0 ) + ( 6, 8, -4)*.75 = (.5, 4, -3 ). Animation A Series of Still Images We Call Animation Animation needs no explanation. We see it in movies and games. We grew up with it in cartoons. Some of the most popular, longest-running television

More information

Animation. Animation. What is animation? Approaches to animation

Animation. Animation. What is animation? Approaches to animation Animation Animation CS 4620 Lecture 20 Industry production process leading up to animation What animation is How animation works (very generally) Artistic process of animation Further topics in how it

More information

Quaternion Math. Application Note. Abstract

Quaternion Math. Application Note. Abstract Quaternion Math Application Note Abstract This application note provides an overview of the quaternion attitude representation used by VectorNav products and how to convert it into other common attitude

More information

Fundamentals of Computer Animation

Fundamentals of Computer Animation Fundamentals of Computer Animation Quaternions as Orientations () page 1 Visualizing a Unit Quaternion Rotation in 4D Space ( ) = w + x + y z q = Norm q + q = q q [ w, v], v = ( x, y, z) w scalar q =,

More information

CS 4204 Computer Graphics

CS 4204 Computer Graphics CS 4204 Computer Graphics Computer Animation Adapted from notes by Yong Cao Virginia Tech 1 Outline Principles of Animation Keyframe Animation Additional challenges in animation 2 Classic animation Luxo

More information

3D geometry basics (for robotics) lecture notes

3D geometry basics (for robotics) lecture notes lecture notes Marc Toussaint Machine Learning & Robotics lab, FU Berlin Arnimallee 7, 495 Berlin, Germany October 30, 20 This document introduces to some basic geometry, focussing on 3D transformations,

More information

Basic methods in Computer Animation

Basic methods in Computer Animation jo a r Ju r ik e nd sk. g scc @ k eri d on Lesson 02 Basic methods in Computer Animation Lesson 02 Outline Key-framing and parameter interpolation Skeleton Animation Forward and inverse Kinematics Procedural

More information

We have just introduced a first kind of specifying change of orientation. Let s call it Axis-Angle.

We have just introduced a first kind of specifying change of orientation. Let s call it Axis-Angle. 2.1.5 Rotations in 3-D around the origin; Axis of rotation In three-dimensional space, it will not be sufficient just to indicate a center of rotation, as we did for plane kinematics. Any change of orientation

More information

We can display an object on a monitor screen in three different computer-model forms: Wireframe model Surface Model Solid model

We can display an object on a monitor screen in three different computer-model forms: Wireframe model Surface Model Solid model CHAPTER 4 CURVES 4.1 Introduction In order to understand the significance of curves, we should look into the types of model representations that are used in geometric modeling. Curves play a very significant

More information

Computer Animation. Advertisement. Computer Animation. 3-D and 2-D animation. Outline. Principles of Traditional Animation

Computer Animation. Advertisement. Computer Animation. 3-D and 2-D animation. Outline. Principles of Traditional Animation Advertisement Computer Animation Adam Finkelstein Princeton University COS 46, Spring 003 Computer Animation 3-D and -D animation What is animation? o Make objects change over time according to scripted

More information

1 Introduction. 2 The G 4 Algebra. 2.1 Definition of G 4 Algebra

1 Introduction. 2 The G 4 Algebra. 2.1 Definition of G 4 Algebra 1 Introduction Traditionally translations and rotations have been analysed/computed with either matrices, quaternions, bi-quaternions, dual quaternions or double quaternions depending of ones preference

More information

Simulation of Trajectories and Comparison of Joint Variables for Robotic Manipulator Using Multibody Dynamics (MBD)

Simulation of Trajectories and Comparison of Joint Variables for Robotic Manipulator Using Multibody Dynamics (MBD) Simulation of Trajectories and Comparison of Joint Variables for Robotic Manipulator Using Multibody Dynamics (MBD) Jatin Dave Assistant Professor Nirma University Mechanical Engineering Department, Institute

More information

3. Interpolation. Closing the Gaps of Discretization... Beyond Polynomials

3. Interpolation. Closing the Gaps of Discretization... Beyond Polynomials 3. Interpolation Closing the Gaps of Discretization... Beyond Polynomials Closing the Gaps of Discretization... Beyond Polynomials, December 19, 2012 1 3.3. Polynomial Splines Idea of Polynomial Splines

More information

TECHNIQUES AND AESTHETICS OF HUMAN INVERSE KINEMATICS FOR FIGHTING SIMULATIONS

TECHNIQUES AND AESTHETICS OF HUMAN INVERSE KINEMATICS FOR FIGHTING SIMULATIONS TECHNIQUES AND AESTHETICS OF HUMAN INVERSE KINEMATICS FOR FIGHTING SIMULATIONS MASTER OF INTERACTIVE TECHNOLOGY THESIS PRESENTED BY RYAN A. MCCORD TECHNIQUES AND AESTHETICS OF HUMAN INVERSE KINEMATICS

More information

Quaternions & IMU Sensor Fusion with Complementary Filtering!

Quaternions & IMU Sensor Fusion with Complementary Filtering! !! Quaternions & IMU Sensor Fusion with Complementary Filtering! Gordon Wetzstein! Stanford University! EE 267 Virtual Reality! Lecture 10! stanford.edu/class/ee267/! April 27, 2016! Updates! project proposals

More information

6. Representing Rotation

6. Representing Rotation 6. Representing Rotation Mechanics of Manipulation Matt Mason matt.mason@cs.cmu.edu http://www.cs.cmu.edu/~mason Carnegie Mellon Lecture 6. Mechanics of Manipulation p.1 Lecture 6. Representing Rotation.

More information

the points are called control points approximating curve

the points are called control points approximating curve Chapter 4 Spline Curves A spline curve is a mathematical representation for which it is easy to build an interface that will allow a user to design and control the shape of complex curves and surfaces.

More information

Rotation in the Space

Rotation in the Space Rotation in the Space (Com S 477/577 Notes) Yan-Bin Jia Sep 6, 2016 The position of a point after some rotation about the origin can simply be obtained by multiplying its coordinates with a matrix One

More information

Goldsmiths, University of London. Computer Animation. Goldsmiths, University of London

Goldsmiths, University of London. Computer Animation. Goldsmiths, University of London Computer Animation Goldsmiths, University of London Computer Animation Introduction Computer animation is about making things move, a key part of computer graphics. In film animations are created off-line,

More information

Lecture 6 : Aircraft orientation in 3 dimensions

Lecture 6 : Aircraft orientation in 3 dimensions Lecture 6 : Aircraft orientation in 3 dimensions Or describing simultaneous roll, pitch and yaw 1.0 Flight Dynamics Model For flight dynamics & control, the reference frame is aligned with the aircraft

More information

Motion Capture Technologies. Jessica Hodgins

Motion Capture Technologies. Jessica Hodgins Motion Capture Technologies Jessica Hodgins Motion Capture Animation Video Games Robot Control What games use motion capture? NBA live PGA tour NHL hockey Legends of Wrestling 2 Lords of Everquest Lord

More information

B4 Computational Geometry

B4 Computational Geometry 3CG 2006 / B4 Computational Geometry David Murray david.murray@eng.o.ac.uk www.robots.o.ac.uk/ dwm/courses/3cg Michaelmas 2006 3CG 2006 2 / Overview Computational geometry is concerned with the derivation

More information

INSTRUCTOR WORKBOOK Quanser Robotics Package for Education for MATLAB /Simulink Users

INSTRUCTOR WORKBOOK Quanser Robotics Package for Education for MATLAB /Simulink Users INSTRUCTOR WORKBOOK for MATLAB /Simulink Users Developed by: Amir Haddadi, Ph.D., Quanser Peter Martin, M.A.SC., Quanser Quanser educational solutions are powered by: CAPTIVATE. MOTIVATE. GRADUATE. PREFACE

More information

Robot Manipulators. Position, Orientation and Coordinate Transformations. Fig. 1: Programmable Universal Manipulator Arm (PUMA)

Robot Manipulators. Position, Orientation and Coordinate Transformations. Fig. 1: Programmable Universal Manipulator Arm (PUMA) Robot Manipulators Position, Orientation and Coordinate Transformations Fig. 1: Programmable Universal Manipulator Arm (PUMA) A robot manipulator is an electronically controlled mechanism, consisting of

More information

This week. CENG 732 Computer Animation. Challenges in Human Modeling. Basic Arm Model

This week. CENG 732 Computer Animation. Challenges in Human Modeling. Basic Arm Model CENG 732 Computer Animation Spring 2006-2007 Week 8 Modeling and Animating Articulated Figures: Modeling the Arm, Walking, Facial Animation This week Modeling the arm Different joint structures Walking

More information

ME 115(b): Solution to Homework #1

ME 115(b): Solution to Homework #1 ME 115(b): Solution to Homework #1 Solution to Problem #1: To construct the hybrid Jacobian for a manipulator, you could either construct the body Jacobian, JST b, and then use the body-to-hybrid velocity

More information

Solving Inverse Kinematics Constraint Problems for Highly Articulated Models

Solving Inverse Kinematics Constraint Problems for Highly Articulated Models Solving Inverse Kinematics Constraint Problems for Highly Articulated Models by Kang Teresa Ge A thesis presented to the University of Waterloo in fulfilment of the thesis requirement for the degree of

More information

Computers in Film Making

Computers in Film Making Computers in Film Making Snow White (1937) Computers in Film Making Slide 1 Snow White - Disney s Folly Moral: Original Budget $250,000 Production Cost $1,488,422 Frames 127,000 Production time 3.5 years

More information

ACTUATOR DESIGN FOR ARC WELDING ROBOT

ACTUATOR DESIGN FOR ARC WELDING ROBOT ACTUATOR DESIGN FOR ARC WELDING ROBOT 1 Anurag Verma, 2 M. M. Gor* 1 G.H Patel College of Engineering & Technology, V.V.Nagar-388120, Gujarat, India 2 Parul Institute of Engineering & Technology, Limda-391760,

More information

Kinematics & Dynamics

Kinematics & Dynamics Overview Kinematics & Dynamics Adam Finkelstein Princeton University COS 46, Spring 005 Kinematics Considers only motion Determined by positions, velocities, accelerations Dynamics Considers underlying

More information

Animation. Overview Traditional Animation Keyframe Animation Interpolating Rotation. 1999 Star Wars: Phantom Menace. 2002 LOTR Two Towers

Animation. Overview Traditional Animation Keyframe Animation Interpolating Rotation. 1999 Star Wars: Phantom Menace. 2002 LOTR Two Towers Animation Overview Traditional Animation Keyframe Animation Interpolating Rotation 1999 Star Wars: Phantom Menace 2002 LOTR Two Towers 2001 Final Fantasy 1 Computer Animation Models have parameters Polygon

More information

This week. CENG 732 Computer Animation. The Display Pipeline. Ray Casting Display Pipeline. Animation. Applying Transformations to Points

This week. CENG 732 Computer Animation. The Display Pipeline. Ray Casting Display Pipeline. Animation. Applying Transformations to Points This week CENG 732 Computer Animation Spring 2006-2007 Week 2 Technical Preliminaries and Introduction to Keframing Recap from CEng 477 The Displa Pipeline Basic Transformations / Composite Transformations

More information

Chapter. 4 Mechanism Design and Analysis

Chapter. 4 Mechanism Design and Analysis Chapter. 4 Mechanism Design and Analysis 1 All mechanical devices containing moving parts are composed of some type of mechanism. A mechanism is a group of links interacting with each other through joints

More information

Graphics. Computer Animation 고려대학교 컴퓨터 그래픽스 연구실. kucg.korea.ac.kr 1

Graphics. Computer Animation 고려대학교 컴퓨터 그래픽스 연구실. kucg.korea.ac.kr 1 Graphics Computer Animation 고려대학교 컴퓨터 그래픽스 연구실 kucg.korea.ac.kr 1 Computer Animation What is Animation? Make objects change over time according to scripted actions What is Simulation? Predict how objects

More information

Modeling Curves and Surfaces

Modeling Curves and Surfaces Modeling Curves and Surfaces Graphics I Modeling for Computer Graphics!? 1 How can we generate this kind of objects? Umm!? Mathematical Modeling! S Do not worry too much about your difficulties in mathematics,

More information

Computer Graphics. Geometric Modeling. Page 1. Copyright Gotsman, Elber, Barequet, Karni, Sheffer Computer Science - Technion. An Example.

Computer Graphics. Geometric Modeling. Page 1. Copyright Gotsman, Elber, Barequet, Karni, Sheffer Computer Science - Technion. An Example. An Example 2 3 4 Outline Objective: Develop methods and algorithms to mathematically model shape of real world objects Categories: Wire-Frame Representation Object is represented as as a set of points

More information

The 3D rendering pipeline (our version for this class)

The 3D rendering pipeline (our version for this class) The 3D rendering pipeline (our version for this class) 3D models in model coordinates 3D models in world coordinates 2D Polygons in camera coordinates Pixels in image coordinates Scene graph Camera Rasterization

More information

Understanding Rotations

Understanding Rotations Understanding Rotations Jim Van Verth Senior Engine Programmer, Insomniac Games jim@essentialmath.com Introductions. Name a little misleading, as truly understanding rotations would require a deep understanding

More information

CS 775: Advanced Computer Graphics. Lecture 11 : Motion Editing

CS 775: Advanced Computer Graphics. Lecture 11 : Motion Editing CS 775: Advanced Computer Graphics Lecture 11 : Motion Editing Working with motion data: Captured on a single perfomer How to use to motion to animate different characters? How to change the motion? How

More information

CG T17 Animation L:CC, MI:ERSI. Miguel Tavares Coimbra (course designed by Verónica Orvalho, slides adapted from Steve Marschner)

CG T17 Animation L:CC, MI:ERSI. Miguel Tavares Coimbra (course designed by Verónica Orvalho, slides adapted from Steve Marschner) CG T17 Animation L:CC, MI:ERSI Miguel Tavares Coimbra (course designed by Verónica Orvalho, slides adapted from Steve Marschner) Suggested reading Shirley et al., Fundamentals of Computer Graphics, 3rd

More information

RELATIVE MOTION ANALYSIS: VELOCITY

RELATIVE MOTION ANALYSIS: VELOCITY RELATIVE MOTION ANALYSIS: VELOCITY Today s Objectives: Students will be able to: 1. Describe the velocity of a rigid body in terms of translation and rotation components. 2. Perform a relative-motion velocity

More information

Curve Fitting. Next: Numerical Differentiation and Integration Up: Numerical Analysis for Chemical Previous: Optimization.

Curve Fitting. Next: Numerical Differentiation and Integration Up: Numerical Analysis for Chemical Previous: Optimization. Next: Numerical Differentiation and Integration Up: Numerical Analysis for Chemical Previous: Optimization Subsections Least-Squares Regression Linear Regression General Linear Least-Squares Nonlinear

More information

University of Cambridge

University of Cambridge University of Cambridge Technical Report Inverse Kinematics: a review of existing techniques and introduction of a new fast iterative solver Andreas Aristidou and Joan Lasenby CUED/F-INFENG/TR-632 September

More information

C O M P U C O M P T U T E R G R A E R G R P A H I C P S Computer Animation Guoying Zhao 1 / 66 /

C O M P U C O M P T U T E R G R A E R G R P A H I C P S Computer Animation Guoying Zhao 1 / 66 / Computer Animation Guoying Zhao 1 / 66 Basic Elements of Computer Graphics Modeling construct the 3D model of the scene Rendering Render the 3D model, compute the color of each pixel. The color is related

More information

IMD4003 3D Computer Animation

IMD4003 3D Computer Animation Contents IMD4003 3D Computer Animation Strange from MoCap G03 Correcting Animation in MotionBuilder Prof. Chris Joslin Overview This document covers how to correct animation (specifically rotations) in

More information

Rotations and Quaternions

Rotations and Quaternions Uniersity of British Columbia CPSC 414 Computer Graphics Rotations and Quaternions Week 9, Wed 29 Oct 2003 Tamara Munzner 1 Uniersity of British Columbia CPSC 414 Computer Graphics Clipping recap Tamara

More information

CATIA V5 Tutorials. Mechanism Design & Animation. Release 18. Nader G. Zamani. University of Windsor. Jonathan M. Weaver. University of Detroit Mercy

CATIA V5 Tutorials. Mechanism Design & Animation. Release 18. Nader G. Zamani. University of Windsor. Jonathan M. Weaver. University of Detroit Mercy CATIA V5 Tutorials Mechanism Design & Animation Release 18 Nader G. Zamani University of Windsor Jonathan M. Weaver University of Detroit Mercy SDC PUBLICATIONS Schroff Development Corporation www.schroff.com

More information

Dynamics. Basilio Bona. DAUIN-Politecnico di Torino. Basilio Bona (DAUIN-Politecnico di Torino) Dynamics 2009 1 / 30

Dynamics. Basilio Bona. DAUIN-Politecnico di Torino. Basilio Bona (DAUIN-Politecnico di Torino) Dynamics 2009 1 / 30 Dynamics Basilio Bona DAUIN-Politecnico di Torino 2009 Basilio Bona (DAUIN-Politecnico di Torino) Dynamics 2009 1 / 30 Dynamics - Introduction In order to determine the dynamics of a manipulator, it is

More information

Simulation of Human Body Kinematics

Simulation of Human Body Kinematics Simulation of Human Body Kinematics Roman Filkorn, Marek Kocan filkorn@decef.elf.stuba.sk, marek_kocan@yahoo.com Department of Computer Science and Engineering Slovak University of Technology Bratislava

More information

Geometric Constraints

Geometric Constraints Simulation in Computer Graphics Geometric Constraints Matthias Teschner Computer Science Department University of Freiburg Outline introduction penalty method Lagrange multipliers local constraints University

More information

MCE/EEC 647/747: Robot Dynamics and Control

MCE/EEC 647/747: Robot Dynamics and Control MCE/EEC 647/747: Robot Dynamics and Control Lecture 4: Velocity Kinematics Jacobian and Singularities Torque/Force Relationship Inverse Velocity Problem Reading: SHV Chapter 4 Mechanical Engineering Hanz

More information

Math 497C Sep 9, Curves and Surfaces Fall 2004, PSU

Math 497C Sep 9, Curves and Surfaces Fall 2004, PSU Math 497C Sep 9, 2004 1 Curves and Surfaces Fall 2004, PSU Lecture Notes 2 15 sometries of the Euclidean Space Let M 1 and M 2 be a pair of metric space and d 1 and d 2 be their respective metrics We say

More information

Mean value theorem, Taylors Theorem, Maxima and Minima.

Mean value theorem, Taylors Theorem, Maxima and Minima. MA 001 Preparatory Mathematics I. Complex numbers as ordered pairs. Argand s diagram. Triangle inequality. De Moivre s Theorem. Algebra: Quadratic equations and express-ions. Permutations and Combinations.

More information

ROBOTICS: ADVANCED CONCEPTS & ANALYSIS

ROBOTICS: ADVANCED CONCEPTS & ANALYSIS ROBOTICS: ADVANCED CONCEPTS & ANALYSIS MODULE 5 - VELOCITY AND STATIC ANALYSIS OF MANIPULATORS Ashitava Ghosal 1 1 Department of Mechanical Engineering & Centre for Product Design and Manufacture Indian

More information

3-D Dynamics of Rigid Bodies

3-D Dynamics of Rigid Bodies 3-D Dynamics of Rigid Bodies Introduction of third dimension :: Third component of vectors representing force, linear velocity, linear acceleration, and linear momentum :: Two additional components for

More information

MATHEMATICAL METHODS FOURIER SERIES

MATHEMATICAL METHODS FOURIER SERIES MATHEMATICAL METHODS FOURIER SERIES I YEAR B.Tech By Mr. Y. Prabhaker Reddy Asst. Professor of Mathematics Guru Nanak Engineering College Ibrahimpatnam, Hyderabad. SYLLABUS OF MATHEMATICAL METHODS (as

More information

Manipulator Kinematics. Prof. Matthew Spenko MMAE 540: Introduction to Robotics Illinois Institute of Technology

Manipulator Kinematics. Prof. Matthew Spenko MMAE 540: Introduction to Robotics Illinois Institute of Technology Manipulator Kinematics Prof. Matthew Spenko MMAE 540: Introduction to Robotics Illinois Institute of Technology Manipulator Kinematics Forward and Inverse Kinematics 2D Manipulator Forward Kinematics Forward

More information

Today. Keyframing. Procedural Animation. Physically-Based Animation. Articulated Models. Computer Animation & Particle Systems

Today. Keyframing. Procedural Animation. Physically-Based Animation. Articulated Models. Computer Animation & Particle Systems Today Computer Animation & Particle Systems Some slides courtesy of Jovan Popovic & Ronen Barzel How do we specify or generate motion? Keyframing Procedural Animation Physically-Based Animation Forward

More information

Rigid body dynamics using Euler s equations, Runge-Kutta and quaternions.

Rigid body dynamics using Euler s equations, Runge-Kutta and quaternions. Rigid body dynamics using Euler s equations, Runge-Kutta and quaternions. Indrek Mandre http://www.mare.ee/indrek/ February 26, 2008 1 Motivation I became interested in the angular dynamics

More information

geometric transforms

geometric transforms geometric transforms 1 linear algebra review 2 matrices matrix and vector notation use column for vectors m 11 =[ ] M = [ m ij ] m 21 m 12 m 22 =[ ] v v 1 v = [ ] T v 1 v 2 2 3 matrix operations addition

More information

Computer Graphics. 2.1 Mathematics

Computer Graphics. 2.1 Mathematics 2 Computer Graphics What You Will Learn: The objectives of this chapter are quite ambitious; you should refer to the references cited in each Section to get a deeper explanation of the topics presented.

More information

Intersection of Objects with Linear and Angular Velocities using Oriented Bounding Boxes

Intersection of Objects with Linear and Angular Velocities using Oriented Bounding Boxes Intersection of Objects with Linear and Angular Velocities using Oriented Bounding Boxes David Eberly Geometric Tools, LLC http://www.geometrictools.com/ Copyright c 1998-2016. All Rights Reserved. Created:

More information

Calculus C/Multivariate Calculus Advanced Placement G/T Essential Curriculum

Calculus C/Multivariate Calculus Advanced Placement G/T Essential Curriculum Calculus C/Multivariate Calculus Advanced Placement G/T Essential Curriculum UNIT I: The Hyperbolic Functions basic calculus concepts, including techniques for curve sketching, exponential and logarithmic

More information

Numerical Analysis An Introduction

Numerical Analysis An Introduction Walter Gautschi Numerical Analysis An Introduction 1997 Birkhauser Boston Basel Berlin CONTENTS PREFACE xi CHAPTER 0. PROLOGUE 1 0.1. Overview 1 0.2. Numerical analysis software 3 0.3. Textbooks and monographs

More information

Dynamics of Multibody Systems: Conventional and Graph-Theoretic Approaches

Dynamics of Multibody Systems: Conventional and Graph-Theoretic Approaches Dynamics of Multibody Systems: Conventional and Graph-Theoretic Approaches SD 65 John McPhee Systems Design Engineering University of Waterloo, Canada Summary of Course: 1. Review of kinematics and dynamics.

More information

Speeding Up Dynamic Simulation and Animation Workflows Using the New Joint Tool in Autodesk Inventor Sergio Duran SolidCAD Solutions

Speeding Up Dynamic Simulation and Animation Workflows Using the New Joint Tool in Autodesk Inventor Sergio Duran SolidCAD Solutions Speeding Up Dynamic Simulation and Animation Workflows Using the New Joint Tool in Autodesk Sergio Duran SolidCAD Solutions MA2749 Autodesk Inventor 2014 3D CAD software has an amazing set of new tools

More information

CMSC 425: Lecture 13 Animation for Games: Basics Tuesday, Mar 26, 2013

CMSC 425: Lecture 13 Animation for Games: Basics Tuesday, Mar 26, 2013 CMSC 425: Lecture 13 Animation for Games: Basics Tuesday, Mar 26, 2013 Reading: Chapt 11 of Gregory, Game Engine Architecture. Game Animation: Most computer games revolve around characters that move around

More information

On-line trajectory planning of robot manipulator s end effector in Cartesian Space using quaternions

On-line trajectory planning of robot manipulator s end effector in Cartesian Space using quaternions On-line trajectory planning of robot manipulator s end effector in Cartesian Space using quaternions Ignacio Herrera Aguilar and Daniel Sidobre (iherrera, daniel)@laas.fr LAAS-CNRS Université Paul Sabatier

More information

Elementary Differential Equations

Elementary Differential Equations Elementary Differential Equations EIGHTH EDITION Earl D. Rainville Late Professor of Mathematics University of Michigan Phillip E. Bedient Professor Emeritus of Mathematics Franklin and Marshall College

More information

CHAPTER 6 TEXTURE ANIMATION

CHAPTER 6 TEXTURE ANIMATION CHAPTER 6 TEXTURE ANIMATION 6.1. INTRODUCTION Animation is the creating of a timed sequence or series of graphic images or frames together to give the appearance of continuous movement. A collection of

More information

Quaternions. Jason Lawrence CS445: Graphics. Acknowledgment: slides by Misha Kazhdan, Allison Klein, Tom Funkhouser, Adam Finkelstein and David Dobkin

Quaternions. Jason Lawrence CS445: Graphics. Acknowledgment: slides by Misha Kazhdan, Allison Klein, Tom Funkhouser, Adam Finkelstein and David Dobkin Jason Lawrence CS445: Graphics Acknowledgment: slides by Misha Kazhdan, Allison Klein, Tom Funkhouser, Adam Finkelstein and David Dobkin Overview Cross Products and (Skew) Symmetric Matrices Quaternions

More information

Points, Vectors, Geometry, Algebra

Points, Vectors, Geometry, Algebra Points, Vectors, Geometr, Algebra a A b v B Points and vectors in geometr and algebra The notion point in geometr is considered here as well known and as its definition is not mathematicall simple, I will

More information

SO(3) Camillo J. Taylor and David J. Kriegman. Yale University. Technical Report No. 9405

SO(3) Camillo J. Taylor and David J. Kriegman. Yale University. Technical Report No. 9405 Minimization on the Lie Group SO(3) and Related Manifolds amillo J. Taylor and David J. Kriegman Yale University Technical Report No. 945 April, 994 Minimization on the Lie Group SO(3) and Related Manifolds

More information

An Adaptive Attitude Control Formulation under Angular Velocity Constraints

An Adaptive Attitude Control Formulation under Angular Velocity Constraints An Adaptive Attitude Control Formulation under Angular Velocity Constraints Puneet Singla and Tarunraj Singh An adaptive attitude control law which explicitly takes into account the constraints on individual

More information

Representing Attitude: Euler Angles, Unit Quaternions, and Rotation Vectors

Representing Attitude: Euler Angles, Unit Quaternions, and Rotation Vectors Representing Attitude: Euler Angles, Unit Quaternions, and Rotation Vectors James Diebel Stanford University Stanford, California 94301 9010 Email: diebel@stanford.edu 0 October 006 Abstract We present

More information

Inverse Kinematic Problem Solving: A Symbolic Approach Using MapleSim and Maple

Inverse Kinematic Problem Solving: A Symbolic Approach Using MapleSim and Maple Inverse Kinematic Problem Solving: A Symbolic Approach Using MapleSim and Maple 4 High-Performance Physical Modeling and Simulation Inverse Kinematic Problem Solving: A Symbolic Approach Using MapleSim

More information

Revisiting the Standard Joint Hierarchy: Improving Realistic Modeling of Articulated Characters

Revisiting the Standard Joint Hierarchy: Improving Realistic Modeling of Articulated Characters Revisiting the Standard Joint Hierarchy: Improving Realistic Modeling of Articulated Characters Victor Ng-Thow-Hing Email: vng@honda-ri.com, Honda Research Institute USA, Inc. Figure 1: Human skeleton

More information

Design-Simulation-Optimization Package for a Generic 6-DOF Manipulator with a Spherical Wrist

Design-Simulation-Optimization Package for a Generic 6-DOF Manipulator with a Spherical Wrist Design-Simulation-Optimization Package for a Generic 6-DOF Manipulator with a Spherical Wrist MHER GRIGORIAN, TAREK SOBH Department of Computer Science and Engineering, U. of Bridgeport, USA ABSTRACT Robot

More information

2D Geometric Transformations. COMP 770 Fall 2011

2D Geometric Transformations. COMP 770 Fall 2011 2D Geometric Transformations COMP 770 Fall 2011 1 A little quick math background Notation for sets, functions, mappings Linear transformations Matrices Matrix-vector multiplication Matrix-matrix multiplication

More information

Curves and Surfaces. Goals. How do we draw surfaces? How do we specify a surface? How do we approximate a surface?

Curves and Surfaces. Goals. How do we draw surfaces? How do we specify a surface? How do we approximate a surface? Curves and Surfaces Parametric Representations Cubic Polynomial Forms Hermite Curves Bezier Curves and Surfaces [Angel 10.1-10.6] Goals How do we draw surfaces? Approximate with polygons Draw polygons

More information

Chapter 1. Introduction. 1.1 The Challenge of Computer Generated Postures

Chapter 1. Introduction. 1.1 The Challenge of Computer Generated Postures Chapter 1 Introduction 1.1 The Challenge of Computer Generated Postures With advances in hardware technology, more powerful computers become available for the majority of users. A few years ago, computer

More information

Maya 2014 Basic Animation & The Graph Editor

Maya 2014 Basic Animation & The Graph Editor Maya 2014 Basic Animation & The Graph Editor When you set a Keyframe (or Key), you assign a value to an object s attribute (for example, translate, rotate, scale, color) at a specific time. Most animation

More information

(Refer Slide Time: 00:00:56 min)

(Refer Slide Time: 00:00:56 min) Numerical Methods and Computation Prof. S.R.K. Iyengar Department of Mathematics Indian Institute of Technology, Delhi Lecture No # 3 Solution of Nonlinear Algebraic Equations (Continued) (Refer Slide

More information

Lecture 7. Matthew T. Mason. Mechanics of Manipulation. Lecture 7. Representing Rotation. Kinematic representation: goals, overview

Lecture 7. Matthew T. Mason. Mechanics of Manipulation. Lecture 7. Representing Rotation. Kinematic representation: goals, overview Matthew T. Mason Mechanics of Manipulation Today s outline Readings, etc. We are starting chapter 3 of the text Lots of stuff online on representing rotations Murray, Li, and Sastry for matrix exponential

More information

Finite Element Formulation for Plates - Handout 3 -

Finite Element Formulation for Plates - Handout 3 - Finite Element Formulation for Plates - Handout 3 - Dr Fehmi Cirak (fc286@) Completed Version Definitions A plate is a three dimensional solid body with one of the plate dimensions much smaller than the

More information

Content. Chapter 4 Functions 61 4.1 Basic concepts on real functions 62. Credits 11

Content. Chapter 4 Functions 61 4.1 Basic concepts on real functions 62. Credits 11 Content Credits 11 Chapter 1 Arithmetic Refresher 13 1.1 Algebra 14 Real Numbers 14 Real Polynomials 19 1.2 Equations in one variable 21 Linear Equations 21 Quadratic Equations 22 1.3 Exercises 28 Chapter

More information

November 16, 2015. Interpolation, Extrapolation & Polynomial Approximation

November 16, 2015. Interpolation, Extrapolation & Polynomial Approximation Interpolation, Extrapolation & Polynomial Approximation November 16, 2015 Introduction In many cases we know the values of a function f (x) at a set of points x 1, x 2,..., x N, but we don t have the analytic

More information