Representations and Transformations. Objectives

Size: px
Start display at page:

Download "Representations and Transformations. Objectives"

Transcription

1 Repreentation and Tranformation Objective Derive homogeneou coordinate tranformation matrice Introduce tandard tranformation - Rotation - Tranlation - Scaling - Shear

2 Scalar, Point, Vector Three baic element from geometry: Scalar, Point, Vector Scalar can be defined a member of a et which can be combined by the operation of addition and multiplication and obey the fundamental axiom: aociativity, commutivity, inverion Example include the real and complex number under the rule we are all familiar with Scalar alone have no geometric propertie Scalar, Point, Vector A vector i a quantity with two attribute direction & magnitude and it own rule a we aw lat lecture The et define a vector pace But, vector lack poition Same length and magnitude -> Vector are inufficient to pecify geometry We need point 4

3 Point and Vector Point, we know, are location in pace Certain operation tranlate between point and vector - Point-point ubtraction yield a vector - Lead to equivalent to point-vector addition v=p-q P=v+Q 5 Vector Space Conider a bai v, v,., v n A vector i written v= v + v +.+ n v n The lit of calar {,,. n } then i the repreentation of v with repect to the given bai And we write the repreentation a a row or column array of calar a=[. n ] T =. n 6

4 Affine Space Vector pace do not repreent point Intead, we work in an affine pace and add a pecial point, the origin, to the bai vector, thi i called a frame v P v v 7 Affine Space An affine pace i both point and vector pace It allow operation from vector, point and calar: - Vector-vector addition - Scalar-vector multiplication - Point-vector addition - All calar-calar operation Define our pace with a coordinate Frame 8 4

5 Affine Space A frame i determined by (P, v, v, v,... ) Within thi frame: Every vector can be written a v= v + v +.+ n v n And every point can be written a P = P + v + v +.+ n v n 9 Homogeneou Coordinate Conider the point and the vector P = P + v + v +.+ n v n v= v + v +.+ n v n They appear to have the imilar repreentation p=[ ] v=[ ] v which confue the point with the vector p But, a vector ha no poition v can be placed anywhere fixed 5

6 Homogeneou Coordinate An affine pace ditinguihe point and vector with ( )( P ) = P ( )( P ) = (zero vector) Homogeneou Coordinate With thee rule, we can keep track of the difference: v= v + v + v = [ ][v v v P ] T P = P + v + v + v = [ ][v v v P ] T Thu we obtain a four-dimenional repreentation for both: v = [ ] T p = [ ] T 6

7 Homogeneou Coordinate Homogeneou coordinate are key to all computer graphic ytem Hardware pipeline all work with 4 dimenional repreentation All tandard tranformation (rotation, tranlation, caling) can be implemented by matrix multiplication with 4 x 4 matrice Homogeneou Coordinate Mot generally, the form of homogeneou coordinate i p=[x y z w] T We can return to a imple three dimenional point by x'x/w y'y/w z'z/w But if w=, the repreentation i that of a vector 4 7

8 Tranformation A tranformation map point to other point and/or vector to other vector v=t(u) Q=T(P) 5 Affine Tranformation Line preerving Characteritic of many phyically important tranformation - Rigid body tranformation: rotation, tranlation - Non-rigid: Scaling, hear Importance in graphic i that we need only tranform vertice (point) of line egment and polygon, then ytem draw between the tranformed point 6 8

9 Tranlation Move (tranlate, diplace) a point to a new location P P d Diplacement determined by a vector d - Three degree of freedom -P =P+d 7 Moving object When we move a point on an object to a new location, to preerve the object, we mut move all other point on the object in the ame way object tranlation: every point diplaced by the ame vector, d 8 9

10 Tranlation Uing Repreentation Uing the homogeneou coordinate repreentation in ome frame p=[ x y z ] T p =[x y z ] T d=[dx dy dz ] T Hence p = p + d or x =x+d x y =y+d y z =z+d z note that thi expreion i in four dimenion and expree that point = vector + point 9 Tranlation Matrix We can alo expre tranlation uing a 4 x 4 matrix T in homogeneou coordinate p =Tp where dx d T = T(d x, d y, d z ) = y dz Thi form i better for implementation becaue all affine tranformation can be expreed thi way and multiple tranformation can be concatenated together

11 Rotation (D) Conider rotation about the origin by degree - radiu tay the ame, angle increae by What i thi rotation about the z axi? Rotation (D) Conider rotation about the origin by degree - radiu tay the ame, angle increae by x = r co ( y = r in ( x =x co y in y = x in + y co x = r co y = r in

12 Rotation about the z axi Rotation about z axi in three dimenion leave all point with the ame z - Equivalent to rotation in two dimenion in plane of contant z x =x co y in y = x in + y co z =z - or in matrix notation (with p a a column) p =R z ()p Rotation Matrix Homogeneou Coordinate: R = R z () = co in in co 4

13 Rotation about x and y axe Same argument a for rotation about z axi - For rotation about x axi, x i unchanged - For rotation about y axi, y i unchanged co - in R = R x () = in co R = R y () = co - in in co 5 Scaling Expand or contract along each axi (fixed point of origin) x = x x y = y y z = z z p =Sp S = S( x, y, z ) = x y z 6

14 Reflection correpond to negative cale factor x = - y = original x = - y = - x = y = - 7 Shear Helpful to add one more baic tranformation Equivalent to pulling face in oppoite direction 8 4

15 Shear Matrix Conider imple hear along x axi x = x + y h y y = y z = z H() = hy 9 Invere Although we could compute invere matrice by general formula, we can alo ue imple geometric obervation, for example: - Tranlation: T - (d x, d y, d z ) = T(-d x, -d y, -d z ) - Rotation: R - () = R(-) Hold for any rotation matrix Note that ince co(-) = co() and in(-)= -in() R - () = R T () - Scaling: S - ( x, y, z ) = S(/ x, / y, / z ) 5

16 Compoite In modeling, we often tart with a imple object centered at the origin, oriented with the axi, and at a tandard ize We apply an compoite tranformation to it vertice to Scale Orient Locate Compoite Tranformation Scaling about a fixed point - Simply applying the cale tranformation alo move the object being caled. Q Q' P P' 6

17 Compoite Tranformation Scaling about origin doe not move object Origin i a fixed point for the cale tranformation We ue compoite tranformation to create cale tranformation with different fixed point Q Q' P P' Compoite Tranformation Fixed point cale tranformation Move fixed point (px,py,pz) to origin Scale by deired amount Move fixed point back to original poition M = T(px, py, pz) S( x, y, z ) T(-px, -py, -pz) 4 7

18 Compoite Tranformation Rotating about a fixed point - baic rotation alone will rotate about origin but we want: 5 Compoite Tranformation Rotating about a fixed point Move fixed point (px,py,pz) to origin Rotate by deired amount Move fixed point back to original poition M = T(px, py, pz) R x () T(-px, -py, -pz) 6 8

19 Compoite Tranformation 7 Compoite tranformation A erie of tranformation on an object can be applied a a erie of matrix multiplication : poition in the global coordinate : poition in the local coordinate 8 9

20 Interpolation In order to move thing, we need both tranlation and rotation Interpolating the tranlation i eay, but what about rotation? 9 Interpolation of orientation How about interpolating each entry of the rotation matrix? The interpolated matrix might no longer be orthonormal, leading to nonene for the in-between rotation 4

21 Interpolation of orientation Example: interpolate linearly from a poitive 9 degree rotation about y axi to a negative 9 degree rotation about y Linearly interpolate each component and halfway between, you get thi... 4 Motivation Finding the mot natural and compact way to preent rotation and orientation Orientation interpolation which reult in a natural motion A cloed mathematical form that deal with rotation and orientation (expanion for the complex number) 4

22 Repreenting Rotation Rotation matrix Euler angle Axi angle Quaternion Exponential map 4 Joint and rotation Rotational DOF are widely ued in character animation tranlational DOF 48 rotational DOF Each joint can have up to DOF DOF: knee DOF: writ DOF: arm 44

23 Euler Angle Repreentation Angle ued to rotate about cardinal axe Orientation are pecified by a et of ordered parameter that repreent ordered rotation about axe, ie. firt about x, then y, then z Many poible ordering, don t have to ue all axe, but can t do the ame axi back to back 45 Euler Angle A general rotation i a combination of three elementary rotation: around the x-axi (x-roll), around the y-axi (y-pitch) and around the z-axi (zyaw). 46

24 4 47 Euler Angle and Rotation Matrice co in in co ) ( co in in co ) pitch( y - co in in co ) ( yaw z roll x ),, ( c c c c c c c c c c c c c c R 48 Gimbal Lock A 9 degree rotation about the y axi eentially make the firt axi of rotation align with the third. Incremental change in x,z produce the ame reult you ve lot a degree of freedom

25 Gimbal Lock Phenomenon of two rotational axi of an object pointing in the ame direction. Reult: Loe a degree of freedom (DOF) 49 Gimbal Lock A Gimbal i a hardware implementation of Euler angle ued for mounting gyrocope or expenive globe Gimbal lock i a baic problem with repreenting D rotation uing Euler angle or fixed angle 5 5

26 Euler angle interpolation y π x z x-roll π y x z R(,,),,R(t,,),,R(,,) t[,] y π x z y-pitch π y π x z z-yaw π y x z R(,,),,R(,t, t),,r(,, ) 5 Euler Angle Interpolation Unnatural movement! 5 6

27 Repreenting Rotation Rotation matrix Euler angle Axi angle Quaternion Exponential map 5 Axi angle Repreent orientation a a vector and a calar - vector i the axi to rotate about - calar i the angle to rotate by 54 7

28 Angle and Axi Any orientation can be repreented by a 4-tuple - angle, vector(x,y,z) where the angle i the amount to rotate by and the vector i the axi to rotate about Can interpolate the angle and axi eparately No gimbal lock problem! But, can t efficiently compoe rotation mut convert to matrice firt! 55 Repreenting Rotation Rotation matrix Euler angle Axi angle Quaternion Exponential map 56 8

29 Quaternion Extenion of imaginary number Require one real and three imaginary component i, j, k q=q +q i+q j+q k 57 Quaternion Extenion of imaginary number Require one real and three imaginary component i, j, k q = (w, x, y, z) = co + in x, y, z ] of axi 58 9

30 Quaternion interpolation Quaternion can expre rotation on unit phere moothly and efficiently. -angle rotation can be repreented by a unit circle -angle rotation can be repreented by a unit phere Interpolation mean moving on n-d phere Now imagine a 4-D phere for -angle rotation Quaternion interpolation Moving between two point on the 4D unit phere - a unit quaternion at each tep - another point on the 4D unit phere - move along the great circle between the two point on the 4D unit phere a an arc 6

31 Quaternion interpolation Spherical linear interpolation (SLERP) Proce: -Rotation matrix quaternion -Carry out lerp/operation with quaternion -Quaternion rotation matrix 6 Matrix form 6

32 Summary Quaternion point on a 4D unit hyperphere + better interpolation + almot unique - le intuitive 6 Quaternion Math Unit quaternion Multiplication 64

33 Quaternion Rotation If i a unit quaternion and then reult in rotating about by proof: ee Quaternion by Shoemaker 65 Chooe a repreentation Chooe the bet repreentation for the tak - input: - joint limit: - interpolation: - compoiting: - rendering: Euler angle Euler angle, quaternion (harder) quaternion or exponential map quaternion or orientation matrix orientation matrix ( quaternion can be repreented a matrix a well) 66

Transformations. Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts University of New Mexico

Transformations. Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts University of New Mexico Transformations Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts University of New Mexico Angel: Interactive Computer Graphics 4E Addison-Wesley 25 1 Objectives

More information

Basic Elements. Geometry is the study of the relationships among objects in an n-dimensional space

Basic Elements. Geometry is the study of the relationships among objects in an n-dimensional space Basic Elements Geometry is the study of the relationships among objects in an n-dimensional space In computer graphics, we are interested in objects that exist in three dimensions We want a minimum set

More information

Computer Graphics. Bing-Yu Chen National Taiwan University The University of Tokyo

Computer Graphics. Bing-Yu Chen National Taiwan University The University of Tokyo Computer Graphic Bing-Yu Chen National Taiwan Univerit The Univerit of Toko Geometrical Tranformation Mathematical reliminarie 2D Tranformation Homogeneou Coorinate & Matri Repreentation 3D Tranformation

More information

CS452/552; EE465/505. Geometry Transformations

CS452/552; EE465/505. Geometry Transformations CS452/552; EE465/505 Geometry Transformations 1-26-15 Outline! Geometry: scalars, points & vectors! Transformations Read: Angel, Chapter 4 (study cube.html/cube.js example) Appendix B: Spaces (vector,

More information

Animation. Keyframe animation. CS4620/5620: Lecture 30. Rigid motion: the simplest deformation. Controlling shape for animation

Animation. Keyframe animation. CS4620/5620: Lecture 30. Rigid motion: the simplest deformation. Controlling shape for animation Keyframe animation CS4620/5620: Lecture 30 Animation Keyframing is the technique used for pose-to-pose animation User creates key poses just enough to indicate what the motion is supposed to be Interpolate

More information

Note 2: Transformation (modeling and viewing)

Note 2: Transformation (modeling and viewing) Note : Tranformation (modeling and viewing Reading: tetbook chapter 4 (geometric tranformation and chapter 5 (viewing.. Introduction (model tranformation modeling coordinate modeling tranformation world

More information

Motion Control (wheeled robots)

Motion Control (wheeled robots) 3 Motion Control (wheeled robot) Requirement for Motion Control Kinematic / dynamic model of the robot Model of the interaction between the wheel and the ground Definition of required motion -> peed control,

More information

CS354 Computer Graphics Rotations and Quaternions

CS354 Computer Graphics Rotations and Quaternions Slide Credit: Don Fussell CS354 Computer Graphics Rotations and Quaternions Qixing Huang April 4th 2018 Orientation Position and Orientation The position of an object can be represented as a translation

More information

Fundamentals of Computer Animation

Fundamentals of Computer Animation Fundamentals of Computer Animation Orientation and Rotation University of Calgary GraphicsJungle Project CPSC 587 5 page Motivation Finding the most natural and compact way to present rotation and orientations

More information

A SIMPLE IMPERATIVE LANGUAGE THE STORE FUNCTION NON-TERMINATING COMMANDS

A SIMPLE IMPERATIVE LANGUAGE THE STORE FUNCTION NON-TERMINATING COMMANDS A SIMPLE IMPERATIVE LANGUAGE Eventually we will preent the emantic of a full-blown language, with declaration, type and looping. However, there are many complication, o we will build up lowly. Our firt

More information

Advanced Encryption Standard and Modes of Operation

Advanced Encryption Standard and Modes of Operation Advanced Encryption Standard and Mode of Operation G. Bertoni L. Breveglieri Foundation of Cryptography - AES pp. 1 / 50 AES Advanced Encryption Standard (AES) i a ymmetric cryptographic algorithm AES

More information

Computer Graphics. Transformation

Computer Graphics. Transformation (SBE 36) Dr. Aman Eldeib Spring 2 SBE 36 i a fundamental corner tone of computer graphic and i a central to OpenGL a well a mot other graphic tem.(2d and 3D ) Given an object, tranformation i to change

More information

Rotations in 3D Graphics and the Gimbal Lock

Rotations in 3D Graphics and the Gimbal Lock Rotations in 3D Graphics and the Gimbal Lock Valentin Koch Autodesk Inc. January 27, 2016 Valentin Koch (ADSK) IEEE Okanagan January 27, 2016 1 / 37 Presentation Road Map 1 Introduction 2 Rotation Matrices

More information

CS 445 / 645 Introduction to Computer Graphics. Lecture 21 Representing Rotations

CS 445 / 645 Introduction to Computer Graphics. Lecture 21 Representing Rotations CS 445 / 645 Introduction to Computer Graphics Lecture 21 Representing Rotations Parameterizing Rotations Straightforward in 2D A scalar, θ, represents rotation in plane More complicated in 3D Three scalars

More information

Quaternion Interpolation

Quaternion Interpolation Quaternion Interpolation 3D Rotation Repreentation (reiew) Rotation Matrix orthornormal column/row bad for interpolation Fixed Angle rotate about global axe bad for interpolation, gimbal lock Euler Angle

More information

Orientation & Quaternions

Orientation & Quaternions Orientation & Quaternions Orientation Position and Orientation The position of an object can be represented as a translation of the object from the origin The orientation of an object can be represented

More information

CS184: Using Quaternions to Represent Rotation

CS184: Using Quaternions to Represent Rotation Page 1 of 5 CS 184 home page A note on these notes: These notes on quaternions were created as a resource for students taking CS184 at UC Berkeley. I am not doing any research related to quaternions and

More information

An Intro to LP and the Simplex Algorithm. Primal Simplex

An Intro to LP and the Simplex Algorithm. Primal Simplex An Intro to LP and the Simplex Algorithm Primal Simplex Linear programming i contrained minimization of a linear objective over a olution pace defined by linear contraint: min cx Ax b l x u A i an m n

More information

CS230 : Computer Graphics Lecture 12: Introduction to Animation. Tamar Shinar Computer Science & Engineering UC Riverside

CS230 : Computer Graphics Lecture 12: Introduction to Animation. Tamar Shinar Computer Science & Engineering UC Riverside CS230 : Computer Graphics Lecture 12: Introduction to Animation Tamar Shinar Computer Science & Engineering UC Riverside Types of animation keyframing rotoscoping stop motion procedural simulation motion

More information

Animation. CS 4620 Lecture 32. Cornell CS4620 Fall Kavita Bala

Animation. CS 4620 Lecture 32. Cornell CS4620 Fall Kavita Bala Animation CS 4620 Lecture 32 Cornell CS4620 Fall 2015 1 What is animation? Modeling = specifying shape using all the tools we ve seen: hierarchies, meshes, curved surfaces Animation = specifying shape

More information

3D Transformations. CS 4620 Lecture Kavita Bala w/ prior instructor Steve Marschner. Cornell CS4620 Fall 2015 Lecture 11

3D Transformations. CS 4620 Lecture Kavita Bala w/ prior instructor Steve Marschner. Cornell CS4620 Fall 2015 Lecture 11 3D Transformations CS 4620 Lecture 11 1 Announcements A2 due tomorrow Demos on Monday Please sign up for a slot Post on piazza 2 Translation 3 Scaling 4 Rotation about z axis 5 Rotation about x axis 6

More information

KS3 Maths Assessment Objectives

KS3 Maths Assessment Objectives KS3 Math Aement Objective Tranition Stage 9 Ratio & Proportion Probabilit y & Statitic Appreciate the infinite nature of the et of integer, real and rational number Can interpret fraction and percentage

More information

Transformations. CS 537 Interactive Computer Graphics Prof. David E. Breen Department of Computer Science

Transformations. CS 537 Interactive Computer Graphics Prof. David E. Breen Department of Computer Science Transformations CS 537 Interactive Computer Graphics Prof. David E. Breen Department of Computer Science 1 Objectives Introduce standard transformations - Rotation - Translation - Scaling - Shear Derive

More information

Motivation. Parametric Curves (later Surfaces) Outline. Tangents, Normals, Binormals. Arclength. Advanced Computer Graphics (Fall 2010)

Motivation. Parametric Curves (later Surfaces) Outline. Tangents, Normals, Binormals. Arclength. Advanced Computer Graphics (Fall 2010) Advanced Computer Graphics (Fall 2010) CS 283, Lecture 19: Basic Geometric Concepts and Rotations Ravi Ramamoorthi http://inst.eecs.berkeley.edu/~cs283/fa10 Motivation Moving from rendering to simulation,

More information

Lecture 14: Minimum Spanning Tree I

Lecture 14: Minimum Spanning Tree I COMPSCI 0: Deign and Analyi of Algorithm October 4, 07 Lecture 4: Minimum Spanning Tree I Lecturer: Rong Ge Scribe: Fred Zhang Overview Thi lecture we finih our dicuion of the hortet path problem and introduce

More information

C O M P U T E R G R A P H I C S. Computer Graphics. Three-Dimensional Graphics I. Guoying Zhao 1 / 52

C O M P U T E R G R A P H I C S. Computer Graphics. Three-Dimensional Graphics I. Guoying Zhao 1 / 52 Computer Graphics Three-Dimensional Graphics I Guoying Zhao 1 / 52 Geometry Guoying Zhao 2 / 52 Objectives Introduce the elements of geometry Scalars Vectors Points Develop mathematical operations among

More information

Objectives. transformation. General Transformations. Affine Transformations. Notation. Pipeline Implementation. Introduce standard transformations

Objectives. transformation. General Transformations. Affine Transformations. Notation. Pipeline Implementation. Introduce standard transformations Objectives Transformations CS Interactive Computer Graphics Prof. David E. Breen Department of Computer Science Introduce standard transformations - Rotation - Translation - Scaling - Shear Derive homogeneous

More information

3D Transformations. CS 4620 Lecture 10. Cornell CS4620 Fall 2014 Lecture Steve Marschner (with previous instructors James/Bala)

3D Transformations. CS 4620 Lecture 10. Cornell CS4620 Fall 2014 Lecture Steve Marschner (with previous instructors James/Bala) 3D Transformations CS 4620 Lecture 10 1 Translation 2 Scaling 3 Rotation about z axis 4 Rotation about x axis 5 Rotation about y axis 6 Properties of Matrices Translations: linear part is the identity

More information

Topics. Lecture 37: Global Optimization. Issues. A Simple Example: Copy Propagation X := 3 B > 0 Y := 0 X := 4 Y := Z + W A := 2 * 3X

Topics. Lecture 37: Global Optimization. Issues. A Simple Example: Copy Propagation X := 3 B > 0 Y := 0 X := 4 Y := Z + W A := 2 * 3X Lecture 37: Global Optimization [Adapted from note by R. Bodik and G. Necula] Topic Global optimization refer to program optimization that encompa multiple baic block in a function. (I have ued the term

More information

Drawing Lines in 2 Dimensions

Drawing Lines in 2 Dimensions Drawing Line in 2 Dimenion Drawing a traight line (or an arc) between two end point when one i limited to dicrete pixel require a bit of thought. Conider the following line uperimpoed on a 2 dimenional

More information

Quaternions and Rotations

Quaternions and Rotations CSCI 420 Computer Graphics Lecture 20 and Rotations Rotations Motion Capture [Angel Ch. 3.14] Rotations Very important in computer animation and robotics Joint angles, rigid body orientations, camera parameters

More information

Routing Definition 4.1

Routing Definition 4.1 4 Routing So far, we have only looked at network without dealing with the iue of how to end information in them from one node to another The problem of ending information in a network i known a routing

More information

MAT 155: Describing, Exploring, and Comparing Data Page 1 of NotesCh2-3.doc

MAT 155: Describing, Exploring, and Comparing Data Page 1 of NotesCh2-3.doc MAT 155: Decribing, Exploring, and Comparing Data Page 1 of 8 001-oteCh-3.doc ote for Chapter Summarizing and Graphing Data Chapter 3 Decribing, Exploring, and Comparing Data Frequency Ditribution, Graphic

More information

Quaternions and Rotations

Quaternions and Rotations CSCI 480 Computer Graphics Lecture 20 and Rotations April 6, 2011 Jernej Barbic Rotations Motion Capture [Ch. 4.12] University of Southern California http://www-bcf.usc.edu/~jbarbic/cs480-s11/ 1 Rotations

More information

The norm Package. November 15, Title Analysis of multivariate normal datasets with missing values

The norm Package. November 15, Title Analysis of multivariate normal datasets with missing values The norm Package November 15, 2003 Verion 1.0-9 Date 2002/05/06 Title Analyi of multivariate normal dataet with miing value Author Ported to R by Alvaro A. Novo . Original by Joeph

More information

Lecture Outline. Global flow analysis. Global Optimization. Global constant propagation. Liveness analysis. Local Optimization. Global Optimization

Lecture Outline. Global flow analysis. Global Optimization. Global constant propagation. Liveness analysis. Local Optimization. Global Optimization Lecture Outline Global flow analyi Global Optimization Global contant propagation Livene analyi Adapted from Lecture by Prof. Alex Aiken and George Necula (UCB) CS781(Praad) L27OP 1 CS781(Praad) L27OP

More information

12.1 Quaternions and Rotations

12.1 Quaternions and Rotations Fall 2015 CSCI 420 Computer Graphics 12.1 Quaternions and Rotations Hao Li http://cs420.hao-li.com 1 Rotations Very important in computer animation and robotics Joint angles, rigid body orientations, camera

More information

Lens Conventions From Jenkins & White: Fundamentals of Optics, pg 50 Incident rays travel left to right Object distance s + if left to vertex, - if

Lens Conventions From Jenkins & White: Fundamentals of Optics, pg 50 Incident rays travel left to right Object distance s + if left to vertex, - if Len Convention From Jenkin & White: Fundamental o Optic, pg 50 Incident ray travel let to right Object ditance + i let to vertex, - i right to vertex Image ditance ' + i right to vertex, - i let to vertex

More information

Geometric Transformations Hearn & Baker Chapter 5. Some slides are taken from Robert Thomsons notes.

Geometric Transformations Hearn & Baker Chapter 5. Some slides are taken from Robert Thomsons notes. Geometric Tranformation Hearn & Baker Chapter 5 Some lie are taken from Robert Thomon note. OVERVIEW Two imenional tranformation Matri repreentation Invere tranformation Three imenional tranformation OpenGL

More information

Transformations: 2D Transforms

Transformations: 2D Transforms 1. Translation Transformations: 2D Transforms Relocation of point WRT frame Given P = (x, y), translation T (dx, dy) Then P (x, y ) = T (dx, dy) P, where x = x + dx, y = y + dy Using matrix representation

More information

Computer Animation Fundamentals. Animation Methods Keyframing Interpolation Kinematics Inverse Kinematics

Computer Animation Fundamentals. Animation Methods Keyframing Interpolation Kinematics Inverse Kinematics Computer Animation Fundamentals Animation Methods Keyframing Interpolation Kinematics Inverse Kinematics Lecture 21 6.837 Fall 2001 Conventional Animation Draw each frame of the animation great control

More information

Lens Conventions From Jenkins & White: Fundamentals of Optics, pg 50 Incident rays travel left to right Object distance s + if left to vertex, - if

Lens Conventions From Jenkins & White: Fundamentals of Optics, pg 50 Incident rays travel left to right Object distance s + if left to vertex, - if Len Convention From Jenkin & White: Fundamental o Optic, pg 50 Incident ray travel let to right Object ditance + i let to vertex, - i right to vertex Image ditance ' + i right to vertex, - i let to vertex

More information

Karen L. Collins. Wesleyan University. Middletown, CT and. Mark Hovey MIT. Cambridge, MA Abstract

Karen L. Collins. Wesleyan University. Middletown, CT and. Mark Hovey MIT. Cambridge, MA Abstract Mot Graph are Edge-Cordial Karen L. Collin Dept. of Mathematic Weleyan Univerity Middletown, CT 6457 and Mark Hovey Dept. of Mathematic MIT Cambridge, MA 239 Abtract We extend the definition of edge-cordial

More information

AN ALGORITHM FOR RESTRICTED NORMAL FORM TO SOLVE DUAL TYPE NON-CANONICAL LINEAR FRACTIONAL PROGRAMMING PROBLEM

AN ALGORITHM FOR RESTRICTED NORMAL FORM TO SOLVE DUAL TYPE NON-CANONICAL LINEAR FRACTIONAL PROGRAMMING PROBLEM RAC Univerity Journal, Vol IV, No, 7, pp 87-9 AN ALGORITHM FOR RESTRICTED NORMAL FORM TO SOLVE DUAL TYPE NON-CANONICAL LINEAR FRACTIONAL PROGRAMMING PROLEM Mozzem Hoain Department of Mathematic Ghior Govt

More information

A METHOD OF REAL-TIME NURBS INTERPOLATION WITH CONFINED CHORD ERROR FOR CNC SYSTEMS

A METHOD OF REAL-TIME NURBS INTERPOLATION WITH CONFINED CHORD ERROR FOR CNC SYSTEMS Vietnam Journal of Science and Technology 55 (5) (017) 650-657 DOI: 10.1565/55-518/55/5/906 A METHOD OF REAL-TIME NURBS INTERPOLATION WITH CONFINED CHORD ERROR FOR CNC SYSTEMS Nguyen Huu Quang *, Banh

More information

Operational Semantics Class notes for a lecture given by Mooly Sagiv Tel Aviv University 24/5/2007 By Roy Ganor and Uri Juhasz

Operational Semantics Class notes for a lecture given by Mooly Sagiv Tel Aviv University 24/5/2007 By Roy Ganor and Uri Juhasz Operational emantic Page Operational emantic Cla note for a lecture given by Mooly agiv Tel Aviv Univerity 4/5/7 By Roy Ganor and Uri Juhaz Reference emantic with Application, H. Nielon and F. Nielon,

More information

Transformation. Jane Li Assistant Professor Mechanical Engineering & Robotics Engineering

Transformation. Jane Li Assistant Professor Mechanical Engineering & Robotics Engineering RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON S RBE 550 Transformation Jane Li Assistant Professor Mechanical Engineering & Robotics Engineering http://users.wpi.edu/~zli11 Announcement Project

More information

Motivation: Level Sets. Input Data Noisy. Easy Case Use Marching Cubes. Intensity Varies. Non-uniform Exposure. Roger Crawfis

Motivation: Level Sets. Input Data Noisy. Easy Case Use Marching Cubes. Intensity Varies. Non-uniform Exposure. Roger Crawfis Level Set Motivation: Roger Crawfi Slide collected from: Fan Ding, Charle Dyer, Donald Tanguay and Roger Crawfi 4/24/2003 R. Crawfi, Ohio State Univ. 109 Eay Cae Ue Marching Cube Input Data Noiy 4/24/2003

More information

Geometric Transformations

Geometric Transformations Geometric Transformations CS 4620 Lecture 9 2017 Steve Marschner 1 A little quick math background Notation for sets, functions, mappings Linear and affine transformations Matrices Matrix-vector multiplication

More information

Coordinate Transformations. Coordinate Transformation. Problem in animation. Coordinate Transformation. Rendering Pipeline $ = $! $ ! $!

Coordinate Transformations. Coordinate Transformation. Problem in animation. Coordinate Transformation. Rendering Pipeline $ = $! $ ! $! Rendering Pipeline Another look at rotation Photography: real scene camera (captures light) photo processing Photographic print processing Computer Graphics: 3D models camera tone model reproduction (focuses

More information

3D SMAP Algorithm. April 11, 2012

3D SMAP Algorithm. April 11, 2012 3D SMAP Algorithm April 11, 2012 Baed on the original SMAP paper [1]. Thi report extend the tructure of MSRF into 3D. The prior ditribution i modified to atify the MRF property. In addition, an iterative

More information

3D Mathematics. Co-ordinate systems, 3D primitives and affine transformations

3D Mathematics. Co-ordinate systems, 3D primitives and affine transformations 3D Mathematics Co-ordinate systems, 3D primitives and affine transformations Coordinate Systems 2 3 Primitive Types and Topologies Primitives Primitive Types and Topologies 4 A primitive is the most basic

More information

Lecture 9: Transformations. CITS3003 Graphics & Animation

Lecture 9: Transformations. CITS3003 Graphics & Animation Lecture 9: Transformations CITS33 Graphics & Animation E. Angel and D. Shreiner: Interactive Computer Graphics 6E Addison-Wesley 212 Objectives Introduce standard transformations Rotation Translation Scaling

More information

Quaternions and Rotations

Quaternions and Rotations CSCI 520 Computer Animation and Simulation Quaternions and Rotations Jernej Barbic University of Southern California 1 Rotations Very important in computer animation and robotics Joint angles, rigid body

More information

Today. Today. Introduction. Matrices. Matrices. Computergrafik. Transformations & matrices Introduction Matrices

Today. Today. Introduction. Matrices. Matrices. Computergrafik. Transformations & matrices Introduction Matrices Computergrafik Matthias Zwicker Universität Bern Herbst 2008 Today Transformations & matrices Introduction Matrices Homogeneous Affine transformations Concatenating transformations Change of Common coordinate

More information

Lecture 4: Transformations and Matrices. CSE Computer Graphics (Fall 2010)

Lecture 4: Transformations and Matrices. CSE Computer Graphics (Fall 2010) Lecture 4: Transformations and Matrices CSE 40166 Computer Graphics (Fall 2010) Overall Objective Define object in object frame Move object to world/scene frame Bring object into camera/eye frame Instancing!

More information

Quaternions and Rotations

Quaternions and Rotations CSCI 520 Computer Animation and Simulation Quaternions and Rotations Jernej Barbic University of Southern California 1 Rotations Very important in computer animation and robotics Joint angles, rigid body

More information

Delaunay Triangulation: Incremental Construction

Delaunay Triangulation: Incremental Construction Chapter 6 Delaunay Triangulation: Incremental Contruction In the lat lecture, we have learned about the Lawon ip algorithm that compute a Delaunay triangulation of a given n-point et P R 2 with O(n 2 )

More information

Jorg s Graphics Lecture Notes Coordinate Spaces 1

Jorg s Graphics Lecture Notes Coordinate Spaces 1 Jorg s Graphics Lecture Notes Coordinate Spaces Coordinate Spaces Computer Graphics: Objects are rendered in the Euclidean Plane. However, the computational space is better viewed as one of Affine Space

More information

Gray-level histogram. Intensity (grey-level) transformation, or mapping. Use of intensity transformations:

Gray-level histogram. Intensity (grey-level) transformation, or mapping. Use of intensity transformations: Faculty of Informatic Eötvö Loránd Univerity Budapet, Hungary Lecture : Intenity Tranformation Image enhancement by point proceing Spatial domain and frequency domain method Baic Algorithm for Digital

More information

IMAGE-BASED RENDERING AND ANIMATION

IMAGE-BASED RENDERING AND ANIMATION DH2323 DGI17 INTRODUCTION TO COMPUTER GRAPHICS AND INTERACTION IMAGE-BASED RENDERING AND ANIMATION Christopher Peters CST, KTH Royal Institute of Technology, Sweden chpeters@kth.se http://kth.academia.edu/christopheredwardpeters

More information

Object Representation Affine Transforms. Polygonal Representation. Polygonal Representation. Polygonal Representation of Objects

Object Representation Affine Transforms. Polygonal Representation. Polygonal Representation. Polygonal Representation of Objects Object Representation Affine Transforms Polygonal Representation of Objects Although perceivable the simplest form of representation they can also be the most problematic. To represent an object polygonally,

More information

3D Rotations and Complex Representations. Computer Graphics CMU /15-662, Fall 2017

3D Rotations and Complex Representations. Computer Graphics CMU /15-662, Fall 2017 3D Rotations and Complex Representations Computer Graphics CMU 15-462/15-662, Fall 2017 Rotations in 3D What is a rotation, intuitively? How do you know a rotation when you see it? - length/distance is

More information

Objects, Classes, and Inheritance

Objects, Classes, and Inheritance Object, Clae, and Inheritance CS111 Computer Programming Department of Computer Science Welleley College The Big Picture Some paradigm of programming: o Imperative Programming Program pecified by conditional,

More information

REVERSE KINEMATIC ANALYSIS OF THE SPATIAL SIX AXIS ROBOTIC MANIPULATOR WITH CONSECUTIVE JOINT AXES PARALLEL

REVERSE KINEMATIC ANALYSIS OF THE SPATIAL SIX AXIS ROBOTIC MANIPULATOR WITH CONSECUTIVE JOINT AXES PARALLEL Proceeding of the ASME 007 International Deign Engineering Technical Conference & Computer and Information in Engineering Conference IDETC/CIE 007 September 4-7, 007 La Vega, Nevada, USA DETC007-34433

More information

Visual Recognition: Image Formation

Visual Recognition: Image Formation Visual Recognition: Image Formation Raquel Urtasun TTI Chicago Jan 5, 2012 Raquel Urtasun (TTI-C) Visual Recognition Jan 5, 2012 1 / 61 Today s lecture... Fundamentals of image formation You should know

More information

Advanced Computer Graphics Transformations. Matthias Teschner

Advanced Computer Graphics Transformations. Matthias Teschner Advanced Computer Graphics Transformations Matthias Teschner Motivation Transformations are used To convert between arbitrary spaces, e.g. world space and other spaces, such as object space, camera space

More information

Quadrilaterals. Learning Objectives. Pre-Activity

Quadrilaterals. Learning Objectives. Pre-Activity Section 3.4 Pre-Activity Preparation Quadrilateral Intereting geometric hape and pattern are all around u when we tart looking for them. Examine a row of fencing or the tiling deign at the wimming pool.

More information

Course Updates. Reminders: 1) Assignment #13 due Monday. 2) Mirrors & Lenses. 3) Review for Final: Wednesday, May 5th

Course Updates. Reminders: 1) Assignment #13 due Monday. 2) Mirrors & Lenses. 3) Review for Final: Wednesday, May 5th Coure Update http://www.phy.hawaii.edu/~varner/phys272-spr0/phyic272.html Reminder: ) Aignment #3 due Monday 2) Mirror & Lene 3) Review for Final: Wedneday, May 5th h R- R θ θ -R h Spherical Mirror Infinite

More information

xy-monotone path existence queries in a rectilinear environment

xy-monotone path existence queries in a rectilinear environment CCCG 2012, Charlottetown, P.E.I., Augut 8 10, 2012 xy-monotone path exitence querie in a rectilinear environment Gregory Bint Anil Mahehwari Michiel Smid Abtract Given a planar environment coniting of

More information

CS612 - Algorithms in Bioinformatics

CS612 - Algorithms in Bioinformatics Fall 2017 Structural Manipulation November 22, 2017 Rapid Structural Analysis Methods Emergence of large structural databases which do not allow manual (visual) analysis and require efficient 3-D search

More information

Analyzing Hydra Historical Statistics Part 2

Analyzing Hydra Historical Statistics Part 2 Analyzing Hydra Hitorical Statitic Part Fabio Maimo Ottaviani EPV Technologie White paper 5 hnode HSM Hitorical Record The hnode i the hierarchical data torage management node and ha to perform all the

More information

Autonomous Navigation for Flying Robots

Autonomous Navigation for Flying Robots Computer Vision Group Prof. Daniel Cremers Autonomous Navigation for Flying Robots Lecture 3.1: 3D Geometry Jürgen Sturm Technische Universität München Points in 3D 3D point Augmented vector Homogeneous

More information

Quaternions & Rotation in 3D Space

Quaternions & Rotation in 3D Space Quaternions & Rotation in 3D Space 1 Overview Quaternions: definition Quaternion properties Quaternions and rotation matrices Quaternion-rotation matrices relationship Spherical linear interpolation Concluding

More information

Visualizing Quaternions

Visualizing Quaternions Visualizing Quaternions Andrew J. Hanson Computer Science Department Indiana University Siggraph 1 Tutorial 1 GRAND PLAN I: Fundamentals of Quaternions II: Visualizing Quaternion Geometry III: Quaternion

More information

Kinematics Programming for Cooperating Robotic Systems

Kinematics Programming for Cooperating Robotic Systems Kinematic Programming for Cooperating Robotic Sytem Critiane P. Tonetto, Carlo R. Rocha, Henrique Sima, Altamir Dia Federal Univerity of Santa Catarina, Mechanical Engineering Department, P.O. Box 476,

More information

Minimum congestion spanning trees in bipartite and random graphs

Minimum congestion spanning trees in bipartite and random graphs Minimum congetion panning tree in bipartite and random graph M.I. Otrovkii Department of Mathematic and Computer Science St. John Univerity 8000 Utopia Parkway Queen, NY 11439, USA e-mail: otrovm@tjohn.edu

More information

A New Approach to Pipeline FFT Processor

A New Approach to Pipeline FFT Processor A ew Approach to Pipeline FFT Proceor Shouheng He and Mat Torkelon Department of Applied Electronic, Lund Univerity S- Lund, SWEDE email: he@tde.lth.e; torkel@tde.lth.e Abtract A new VLSI architecture

More information

Universität Augsburg. Institut für Informatik. Approximating Optimal Visual Sensor Placement. E. Hörster, R. Lienhart.

Universität Augsburg. Institut für Informatik. Approximating Optimal Visual Sensor Placement. E. Hörster, R. Lienhart. Univerität Augburg à ÊÇÅÍÆ ËÀǼ Approximating Optimal Viual Senor Placement E. Hörter, R. Lienhart Report 2006-01 Januar 2006 Intitut für Informatik D-86135 Augburg Copyright c E. Hörter, R. Lienhart Intitut

More information

Planning of scooping position and approach path for loading operation by wheel loader

Planning of scooping position and approach path for loading operation by wheel loader 22 nd International Sympoium on Automation and Robotic in Contruction ISARC 25 - September 11-14, 25, Ferrara (Italy) 1 Planning of cooping poition and approach path for loading operation by wheel loader

More information

VLSI Design 9. Datapath Design

VLSI Design 9. Datapath Design VLSI Deign 9. Datapath Deign 9. Datapath Deign Lat module: Adder circuit Simple adder Fat addition Thi module omparator Shifter Multi-input Adder Multiplier omparator detector: A = 1 detector: A = 11 111

More information

Kinematics and Orientations

Kinematics and Orientations Kinematics and Orientations Hierarchies Forward Kinematics Transformations (review) Euler angles Quaternions Yaw and evaluation function for assignment 2 Building a character Just translate, rotate, and

More information

To Do. Outline. Translation. Homogeneous Coordinates. Foundations of Computer Graphics. Representation of Points (4-Vectors) Start doing HW 1

To Do. Outline. Translation. Homogeneous Coordinates. Foundations of Computer Graphics. Representation of Points (4-Vectors) Start doing HW 1 Foundations of Computer Graphics Homogeneous Coordinates Start doing HW 1 To Do Specifics of HW 1 Last lecture covered basic material on transformations in 2D Likely need this lecture to understand full

More information

Laboratory Exercise 6

Laboratory Exercise 6 Laboratory Exercie 6 Adder, Subtractor, and Multiplier The purpoe of thi exercie i to examine arithmetic circuit that add, ubtract, and multiply number. Each type of circuit will be implemented in two

More information

Edits in Xylia Validity Preserving Editing of XML Documents

Edits in Xylia Validity Preserving Editing of XML Documents dit in Xylia Validity Preerving diting of XML Document Pouria Shaker, Theodore S. Norvell, and Denni K. Peter Faculty of ngineering and Applied Science, Memorial Univerity of Newfoundland, St. John, NFLD,

More information

Vector Algebra Transformations. Lecture 4

Vector Algebra Transformations. Lecture 4 Vector Algebra Transformations Lecture 4 Cornell CS4620 Fall 2008 Lecture 4 2008 Steve Marschner 1 Geometry A part of mathematics concerned with questions of size, shape, and relative positions of figures

More information

3D Transformations World Window to Viewport Transformation Week 2, Lecture 4

3D Transformations World Window to Viewport Transformation Week 2, Lecture 4 CS 430/536 Computer Graphics I 3D Transformations World Window to Viewport Transformation Week 2, Lecture 4 David Breen, William Regli and Maxim Peysakhov Geometric and Intelligent Computing Laboratory

More information

Geometry. CS 537 Interactive Computer Graphics Prof. David E. Breen Department of Computer Science

Geometry. CS 537 Interactive Computer Graphics Prof. David E. Breen Department of Computer Science Geometry CS 537 Interactive Computer Graphics Prof. David E. Breen Department of Computer Science E. Angel and D. Shreiner: Interactive Computer Graphics 6E Addison-Wesley 2012. 1 Objectives Introduce

More information

Transformations Week 9, Lecture 18

Transformations Week 9, Lecture 18 CS 536 Computer Graphics Transformations Week 9, Lecture 18 2D Transformations David Breen, William Regli and Maxim Peysakhov Department of Computer Science Drexel University 1 3 2D Affine Transformations

More information

Transformations. Standard Transformations. David Carr Virtual Environments, Fundamentals Spring 2005 Based on Slides by E. Angel

Transformations. Standard Transformations. David Carr Virtual Environments, Fundamentals Spring 2005 Based on Slides by E. Angel INSTITUTIONEN FÖR SYSTEMTEKNIK LULEÅ TEKNISKA UNIVERSITET Transformations David Carr Virtual Environments, Fundamentals Spring 25 Based on Slides by E. Angel Jan-27-5 SMM9, Transformations 1 L Overview

More information

1 The secretary problem

1 The secretary problem Thi i new material: if you ee error, pleae email jtyu at tanford dot edu 1 The ecretary problem We will tart by analyzing the expected runtime of an algorithm, a you will be expected to do on your homework.

More information

Math background. 2D Geometric Transformations. Implicit representations. Explicit representations. Read: CS 4620 Lecture 6

Math background. 2D Geometric Transformations. Implicit representations. Explicit representations. Read: CS 4620 Lecture 6 Math background 2D Geometric Transformations CS 4620 Lecture 6 Read: Chapter 2: Miscellaneous Math Chapter 5: Linear Algebra Notation for sets, functions, mappings Linear transformations Matrices Matrix-vector

More information

Geometry. Prof. George Wolberg Dept. of Computer Science City College of New York

Geometry. Prof. George Wolberg Dept. of Computer Science City College of New York Geometry Prof. George Wolberg Dept. of Computer Science City College of New York Objectives Introduce the elements of geometry -Scalars - Vectors - Points Develop mathematical operations among them in

More information

Shortest Paths Problem. CS 362, Lecture 20. Today s Outline. Negative Weights

Shortest Paths Problem. CS 362, Lecture 20. Today s Outline. Negative Weights Shortet Path Problem CS 6, Lecture Jared Saia Univerity of New Mexico Another intereting problem for graph i that of finding hortet path Aume we are given a weighted directed graph G = (V, E) with two

More information

Transformations. Overview. Standard Transformations. David Carr Fundamentals of Computer Graphics Spring 2004 Based on Slides by E.

Transformations. Overview. Standard Transformations. David Carr Fundamentals of Computer Graphics Spring 2004 Based on Slides by E. INSTITUTIONEN FÖR SYSTEMTEKNIK LULEÅ TEKNISKA UNIVERSITET Transformations David Carr Fundamentals of Computer Graphics Spring 24 Based on Slides by E. Angel Feb-1-4 SMD159, Transformations 1 L Overview

More information

Last week. Machiraju/Zhang/Möller/Fuhrmann

Last week. Machiraju/Zhang/Möller/Fuhrmann Last week Machiraju/Zhang/Möller/Fuhrmann 1 Geometry basics Scalar, point, and vector Vector space and affine space Basic point and vector operations Sided-ness test Lines, planes, and triangles Linear

More information

3D Transformations and Complex Representations. Computer Graphics CMU /15-662, Fall 2016

3D Transformations and Complex Representations. Computer Graphics CMU /15-662, Fall 2016 3D Transformations and Complex Representations Computer Graphics CMU 15-462/15-662, Fall 2016 Quiz 4: Trees and Transformations Student solutions (beautiful!): Rotations in 3D What is a rotation, intuitively?

More information

1 Transformations. Chapter 1. Transformations. Department of Computer Science and Engineering 1-1

1 Transformations. Chapter 1. Transformations. Department of Computer Science and Engineering 1-1 Transformations 1-1 Transformations are used within the entire viewing pipeline: Projection from world to view coordinate system View modifications: Panning Zooming Rotation 1-2 Transformations can also

More information

Quaternions and Euler Angles

Quaternions and Euler Angles Quaternions and Euler Angles Revision #1 This document describes how the VR Audio Kit handles the orientation of the 3D Sound One headset using quaternions and Euler angles, and how to convert between

More information

Inverse Kinematics 1 1/29/2018

Inverse Kinematics 1 1/29/2018 Invere Kinemati 1 Invere Kinemati 2 given the poe of the end effetor, find the joint variable that produe the end effetor poe for a -joint robot, given find 1 o R T 3 2 1,,,,, q q q q q q RPP + Spherial

More information