CSCE441: Computer Graphics Coordinate & Composite Transformations Jinxiang Chai
Outline 2D/3D Coordinate transformation 2D/3D Composite transformation Required readings: HB 7-8, 9-6
Coordinate Transform: 3D Geometry Pipeline Rotate and translate the camera Object space World space View space Focal length Aspect ratio & resolution Normalized project space Image space 2
Coordinate Transformation: 3D Modeling/Design Coordinate transformation from one reference frame to another
Coordinate Transformation: Animation/Robotics How to model 2D movement of animated characters or robots? Click here
Coordinate Transformation Coordinate transformation from one reference frame to another
Coordinate Transformation Coordinate transformation from one reference frame to another Local reference frame
Coordinate Transformation Coordinate transformation from one reference frame to another Local reference frame Global reference frame 7
Coordinate Transformation Coordinate transformation from one reference frame to another ? Local reference frame Global reference frame 8
Review – Vector Operations Dot Product
Review – Vector Operations Dot Product: measuring similarity between two vectors
Review – Vector Operations Dot Product: measuring similarity between two vectors
Review – Vector Operations Dot Product: measuring similarity between two vectors Unit vector:
Review – Vector Operations Dot Product: measuring similarity between two vectors
Review – Vector Operations Dot Product: measuring similarity between two vectors
Review – Vector Operations Cross Product: measuring the area determined by two vectors 15
Review – Vector Operations Cross Product: measuring the area determined by two vectors 16
2D Coordinates 2D Cartesian coordinate system:
2D Coordinate Transformation 2D Cartesian coordinate system:
2D Coordinate Transformation 2D Cartesian coordinate system: any 2D vector can be represented as 19
2D Coordinate Transformation 2D Cartesian coordinate system: P: (x,y) 20
2D Coordinate Transformation 2D Cartesian coordinate system: P: (x,y) 21
2D Coordinate Transformation Transform object description from to p
2D Coordinate Transformation Transform object description from to p Given the coordinates (x’,y’) in i’j’ how to compute the coordinates (x,y) in ij? 23
2D Coordinate Transformation Transform object description from to p Given the coordinates (x’,y’) in i’j’ how to compute the coordinates (x,y) in ij? 24
2D Coordinate Transformation Transform object description from to p Given the coordinates (x’,y’) in i’j’ how to compute the coordinates (x,y) in ij? 25
2D Coordinate Transformation Transform object description from to p
2D Coordinate Transformation Transform object description from to p
2D Coordinate Transformation Transform object description from to p
2D Coordinate Transformation Transform object description from to p
2D Coordinate Transformation Transform object description from to p
2D Coordinate Transformation Transform object description from to p
2D Coordinate Transformation Transform object description from to p
2D Coordinate Transformation Transform object description from to p
2D Coordinate Transformation Transform object description from to p
2D Coordinate Transformation Transform object description from to p
2D Coordinate Transformation Transform object description from to p
2D Coordinate Transformation Transform object description from to p
2D Coordinate Transformation Transform object description from to p 38
2D Coordinate Transformation p What does this column vector mean?
2D Coordinate Transformation Transform object description from to p What does this column vector mean? Vector i’ in the new reference system
2D Coordinate Transformation Transform object description from to p What does this column vector mean?
2D Coordinate Transformation Transform object description from to p What does this column vector mean? Vector j’ in the new reference system
2D Coordinate Transformation Transform object description from to p What does this column vector mean?
2D Coordinate Transformation Transform object description from to p What does this column vector mean? The old origin in the new reference system
2D Coordinate Transformation 2D translation p
2D Coordinate Transformation 2D translation ? ? p ? ?
2D Coordinate Transformation 2D translation 1 p 1
2D Coordinate Transformation 2D translation & rotation ? p
2D Coordinate Transformation 2D translation & rotation p ?
2D Coordinate Transformation 2D translation & rotation p
2D Coordinate Transformation 2D translation & rotation ? p
2D Coordinate Transformation 2D translation & rotation p
2D Coordinate Transformation 2D translation & rotation p ?
2D Coordinate Transformation 2D translation & rotation p
2D Coordinate Transformation An alternative way to look at the problem set up a transformation that superimposes the x’y’ axes onto the xy axis transform the point from the new coordinate system to the old one. P=[x,y]
2D Coordinate Transformation An alternative way to look at the problem set up a transformation that superimposes the x’y’ axes onto the xy axis transform the point from the new coordinate system to the old one. P=[x,y]
2D Coordinate Transformation An alternative way to look at the problem set up a transformation that superimposes the x’y’ axes onto the xy axis transform the point from the new coordinate system to the old one. P=[x,y]
2D Coordinate Transformation An alternative way to look at the problem This transforms the point from (x,y) to (x’,y’) p
2D Coordinate Transformation An alternative way to look at the problem This transforms the point from (x,y) to (x’,y’) How to transform the point from (x’,y’) to (x,y)? p 59
2D Coordinate Transformation An alternative way to look at the problem This transforms the point from (x,y) to (x’,y’) How to transform the point from (x’,y’) to (x,y)? Invert the matrix! p
2D Coordinate Transformation An alternative way to look at the problem This transforms the point from (x,y) to (x’,y’) How to transform the point from (x’,y’) to (x,y)? Invert the matrix! p
2D Coordinate Transformation An alternative way to look at the problem This transforms the point from (x,y) to (x’,y’) How to transform the point from (x’,y’) to (x,y)? Invert the matrix! p
2D Coordinate Transformation An alternative way to look at the problem This transforms the point from (x,y) to (x’,y’) How to transform the point from (x’,y’) to (x,y)? Invert the matrix! p
2D Coordinate Transformation An alternative way to look at the problem This transforms the point from (x,y) to (x’,y’) How to transform the point from (x’,y’) to (x,y)? Invert the matrix! p
2D Coordinate Transformation Same results! p
2D Coordinate Transformation 2D translation & rotation p
2D Coordinate Transformation 2D translation & rotation p
2D Coordinate Transformation 2D translation & rotation p
2D Coordinate Transformation 2D translation & rotation p 69
2D Coordinate Transformation 2D translation & rotation p
2D Coordinate Transformation 2D translation & rotation p
3D Coordinate Transformation Transform object description from to p
2D Coordinate Transformation Transform object description from to p
3D Coordinate Transformation Transform object description from to p
3D Coordinate Transformation Transform object description from to p
3D Coordinate Transformation Transform object description from to p
3D Coordinate Transformation Transform object description from to y x z
Composite 2D Transformation How to model 2D movement of characters or robots? Click here 78
Composite 2D Transformation A 2D lamp character 79
Composite 2D Transformation A 2D lamp character – skeleton size & model 80
Composite 2D Transformation A 2D lamp character – skeleton size & model 81
Composite 2D Transformation How can we draw the character given the pose ? 82
Composite 2D Transformation How can we draw the character given the pose ? - This requires computing the global coordinates for any point on the character. But we only have local coordinates of points. So how can we map the local coordinates to the global coordinates? 83
Articulated Character Local reference frames with a default pose (0,0,0,0,0,0) 84
Composite 2D Transformation What’s the pose? 85
Composite 2D Transformation What’s the pose? 86
Composite 2D Transformation A 2D lamp character ? Given , , how to compute the global position of a point (e.g., A) based on its local coordinates? 87
Composite 2D Transformation What’s local coordinate ? ? 88
Composite 2D Transformation What’s local coordinate ? ? 89
Composite 2D Transformation What’s the current coordinate A ? ? 90
Composite 2D Transformation What’s the current coordinate A ? ? 91
Composite 2D Transformation What’s the current coordinate A ? ? 92
Composite 2D Transformation What’s the current coordinate A ? ? 93
Composite 2D Transformation What’s the current coordinate A ? ? 94
Composite 2D Transformation What’s the current coordinate A ? 95
How to Animate the Character? A 2D lamp character 96
How to Animate the Character? Keyframe animation - Manually pose the character by choosing appropriate values for - Linearly interpolate the inbetween poses. - Works for any types of articulated characters! 97
Composite 3D Transformation Similarly, we can easily extend composite transformation from 2D to 3D
Composite 3D Transformation
One Remaining Issue How to draw the object?
One Remaining Issue How to draw the object?