3D Transformation. In 3D, we have x, y, and z. We will continue use column vectors:. Homogenous systems:. x y z. x y z. glvertex3f(x, y,z);
|
|
- Antonia Campbell
- 5 years ago
- Views:
Transcription
1 3D Transformation
2 In 3D, we have x, y, and z. We will continue use column vectors:. Homogenous systems:. 3D Transformation glvertex3f(x, y,z); x y z x y z
3 A Right Handle Coordinate System x y z; y z x; z x y;
4 Transformation: 3D Translation Given a position (x, y, z) and an offset vector (tx, ty, tz): x' x + tx y' y + ty z' z + tz x' y' z' tx ty tz x y z
5 Transformation: 3D Scaling Change the object size: x' sx x y' sy y z' sz z x' y' z' sx sy sz x y z
6 Transformation: 3D Rotation Rotation needs an angle and an axis. Rotation is defined according to the right hand rule (our convention).
7 Transformation: 3D Rotation Axis Matrix Rotate around X: glrotatef(θ,,, ); Rotate around Y: glrotatef(θ,,, ); Rotate around Z: glrotatef(θ,,, ); x' y' z' cosθ sinθ sinθ cosθ x y z x' y' z' cosθ sinθ sinθ cosθ x y z x' y' z' cosθ sinθ sinθ cosθ x y z
8 How to quickly remember them The axis coordinate is unchanged. For the other two coordinates: Diagonals are filled with cos. Off diagonals are filled with sin. There is a sign
9 How to quickly remember them Here is an easier way to think about it: x' y' z' The vector after rotation a b c d e f g h i x y z The vector before rotation
10 How to quickly remember them a d g a b c d e f g h i X axis What X becomes After rotation b e h a b c d e f g h i Y axis What Y becomes After rotation c f i a b c d e f g h i Z axis What Z becomes After rotation
11 For example X Y Z cosθ sinθ sinθ cosθ θ cosθ sinθ sinθ cosθ θ X Y Z
12 Generic Rotation Use the rotation function: glrotatef(theta, x, y, z); In degree No need to be normalized x 2 ( c) + c xy( c) zs xz( c) + ys yx( c) + zs y 2 ( c) + c yz( c) xs xz( c) ys yz( c) + xs z 2 ( c) + c (x, y, z) c cosθ s sinθ Don t need to remember it, just for your reference. θ
13 What if I don t like a transformation, how do I get back? How to reverse a transformation x' y' z' M x y z x y z? x' y' z'?m x y z :? M M M MM I
14 Inverse Translation x' x + tx y' y + ty z' z + tz x' y' z' tx ty tz x y z x x' tx y y' ty z z' tz x y z tx ty tz x' y' z' gltranslatef(tx, ty, tz); gltranslatef(-tx, -ty, -tz);
15 Inverse Scaling x' x sx y' y sy z' z sz x' y' z' sx sy sz x y z x x'/ sx y y'/ sy z z'/ sz x y z sx sy sz x' y' z' glscalef(sx, sy, sz); glscalef(/sx, /sy, /sz);
16 Inverse Rotation x' y' z' cosθ sinθ sinθ cosθ x y z glrotatef(theta,,, ); Rotate_X by θ x' y' z' cosθ sinθ sinθ cosθ x y z glrotatef(-theta,,, ); Rotate_X by θ
17 Inverse Transformation The transformation has multiple matrices: v v' Mv (M M 2 M 3 M 4 )v Scaling Translation Rotation Translation v M M 2 M 3 M 4 Its inverse: v v' M v (M 4 M 3 M 2 M )v Translation Rotation Translation Scaling v M 4 M 3 M 2 M
18 OpenGL handles multiple matrices M I glloadidentity(); glrotatef( ); gltranslatef( ); glscalef( ); gltranslatef( ); glbegin(gl_points); glvertex3fv(v); glend(); M IM R M IM M R T M IM M M R T S M IM M M M R T S T v'mv IM R M T M S M T v
19 OpenGL handles multiple matrices Reverse Order glloadidentity(); glrotatef( ); gltranslatef( ); glscalef( ); gltranslatef( ); glbegin(gl_points); glvertex3fv(v); glend(); Define v Translation Scaling Translation Rotation v'mv IM R M T M S M T v
20 OpenGL has a reason. glrotatef( ); //A gltranslatef( );//B glscalef( ); //C glvertex3fv(v); Define v vcv vbv vav We think: v is transformed in a world coordinate system. Given a world locala(world) local2b(local) local3c(local2) Define vin local3 OpenGL think: world is moved into local. Each transformation is defined respect to the local.
21 For example gltranslatef(3,2,); glvertex3f(2,2,); We think (2, 2) moves by an offset (3, 2). OpenGL thinks the coordinate System moves by an offset (3, 2). The vertex defines at (2, 2) locally.
22 For example glrotatef(45,,,); glvertex3f(4,,); We think (4, ) rotates 45 degree. OpenGL thinks the coordinate System rotates 45 degree. The vertex defines at (4, ) locally.
23 For example glrotatef(45,,,); gltranslatef(4,,); glvertex3f(,,); We think (, ) first Translates, then rotates. OpenGL thinks the coordinate System first rotates, then translates.
24 For example glrotatef(45,,,); gltranslatef(4,,); glbegin( ); glvertex3f(,,); glend(); L2 Important Note: The second translation is defined respect to L, not W! L W OpenGL thinks the coordinate System first rotates, then translates.
25 A quiz L2 glrotatef(45,,,); gltranslatef(4,,); glvertex3f(,,); L W L2 gltranslatef(2.8,2.8,); glrotatef(45,,,); glvertex3f(,,); L (2.8, 2.8) W
26 What if we change the order? L2 glrotatef(45,,,); gltranslatef(2.8,2.8,); glvertex3f(,,); Important Note: The second transformation is defined respect to L, not W! L W
27 Order is important. L2 L2 L L (2.8, 2.8) W W gltranslatef(2.8,2.8,); glrotatef(45,,,); glvertex3f(,,); glrotatef(45,,,); gltranslatef(2.8,2.8,); glvertex3f(,,);
28 A quiz gltranslatef(3,4,); L W (3., 4.)
29 A quiz L2 gltranslatef(3,4,); glrotatef(45,,,); L W (3., 4.)
30 A quiz L3 gltranslatef(3,4,); glrotatef(45,,,); L glscalef(,2,); W (3., 4.)
31 A quiz L4 L3 gltranslatef(3,4,); glrotatef(45,,,); L glscalef(,2,); gltranslatef(3,,); W (3., 4.)
32 A quiz L4 L3 gltranslatef(3,4,); glrotatef(45,,,); L glscalef(,2,); gltranslatef(3,,); W glvertex3f(3,,); (3., 4.)
33 How do I know the coordinate system? W L3 OpenGL only use a ModelView matrix M. M is transformed in various ways. M s effect is to update each vertex as: x' y' z' M x y z a b c d e f g h i j k l x y z
34 How do I know the coordinate system? W L3 Case : d h l a b c d e f g h i j k l If we draw a dot at (,, ) in L3, we actually get (d, h, l) in W.
35 How do I know the coordinate system? W L3 Case 2: a + d e + h i + l a b c d e f g h i j k l If we draw a dot at (,, ) in L3, we actually get (a+d, e+h, i+l) in W.
36 How do I know the coordinate system? W L3 Case 2: a + d e + h i + l d h l a e i In other words, a unit xvector in L3 is (a, e, i) in W. a + d e + h i + l a b c d e f g h i j k l
37 How do I know the coordinate system? W L3 Case 2: b + d f + h j + l d h l b f j In other words, a unit yvector in L3 is (b, f, j) in W. b + d f + h j + l a b c d e f g h i j k l
38 How do I know the coordinate system? ModelView matrix is the coordinate system L3: L3 L3 s X in W L3 s Z in W x' y' z' a b c d e f g h i j k l x y z W L3 s Y in W L3 s Origin in W
39 Summary If we think: Each transformation updates the vertex in an absolute world. Then, the code is arranged in a reverse order. Alternatively, OpenGL thinks: A transformation updates the coordinate system. For each change, the transformation is defined in the current (local) coordinate system. Transformation matrix and coordinate system are the same. The code is in the forward order!
CS 4204 Computer Graphics
CS 424 Computer Graphics 2D Transformations Yong Cao Virginia Tech References: Introduction to Computer Graphics course notes by Doug Bowman Interactive Computer Graphics, Fourth Edition, Ed Angle Transformations
More informationComputer Graphics. Chapter 7 2D Geometric Transformations
Computer Graphics Chapter 7 2D Geometric Transformations Chapter 7 Two-Dimensional Geometric Transformations Part III. OpenGL Functions for Two-Dimensional Geometric Transformations OpenGL Geometric Transformation
More informationLecture 6 Sections 4.3, 4.6, 4.7. Wed, Sep 9, 2009
Lecture 6 Sections 4.3, 4.6, 4.7 Hampden-Sydney College Wed, Sep 9, 2009 Outline 1 2 3 4 re are three mutually orthogonal axes: the x-axis, the y-axis, and the z-axis. In the standard viewing position,
More informationTransformations. CSCI 420 Computer Graphics Lecture 4
CSCI 420 Computer Graphics Lecture 4 Transformations Jernej Barbic University of Southern California Vector Spaces Euclidean Spaces Frames Homogeneous Coordinates Transformation Matrices [Angel, Ch. 4]
More informationComputer Graphics. Chapter 5 Geometric Transformations. Somsak Walairacht, Computer Engineering, KMITL
Chapter 5 Geometric Transformations Somsak Walairacht, Computer Engineering, KMITL 1 Outline Basic Two-Dimensional Geometric Transformations Matrix Representations and Homogeneous Coordinates Inverse Transformations
More informationLecture 5b. Transformation
Lecture 5b Transformation Refresher Transformation matrices [4 x 4]: the fourth coordinate is homogenous coordinate. Rotation Transformation: Axis of rotation must through origin (0,0,0). If not, translation
More informationCOMP Computer Graphics and Image Processing. 5: Viewing 1: The camera. In part 1 of our study of Viewing, we ll look at ˆʹ U ˆ ʹ F ˆʹ S
COMP27112 Û ˆF Ŝ Computer Graphics and Image Processing ˆʹ U ˆ ʹ F C E 5: iewing 1: The camera ˆʹ S Toby.Howard@manchester.ac.uk 1 Introduction In part 1 of our study of iewing, we ll look at iewing in
More informationTransformations. CSCI 420 Computer Graphics Lecture 5
CSCI 420 Computer Graphics Lecture 5 Transformations Jernej Barbic University of Southern California Vector Spaces Euclidean Spaces Frames Homogeneous Coordinates Transformation Matrices [Angel, Ch. 3]
More informationTransformations. OpenGL Transformations. 4x4 Model-view Matrix (this lecture) OpenGL Transformation Matrices. 4x4 Projection Matrix (next lecture)
CSCI 420 Computer Graphics Lecture 5 OpenGL Transformations Transformations Vector Spaces Euclidean Spaces Frames Homogeneous Coordinates Transformation Matrices Jernej Barbic [Angel, Ch. 3] University
More informationComputer Graphics Lighting
Lighting 1 Mike Bailey mjb@cs.oregonstate.edu This work is licensed under a Creative Commons Attribution-NonCommercial- NoDerivatives 4.0 International License Lighting.pptx Why Do We Care About Lighting?
More informationComputer Graphics Lighting. Why Do We Care About Lighting?
Lighting 1 Mike Bailey mjb@cs.oregonstate.edu This work is licensed under a Creative Commons Attribution-NonCommercial- NoDerivatives 4.0 International License Lighting.pptx Why Do We Care About Lighting?
More informationCSC 470 Computer Graphics
CSC 470 Computer Graphics Transformations of Objects CSC 470 Computer Graphics, Dr.N. Georgieva, CSI/CUNY 1 Transformations of objects - 2D CSC 470 Computer Graphics, Dr.N. Georgieva, CSI/CUNY 2 Using
More informationFall CSCI 420: Computer Graphics. 2.2 Transformations. Hao Li.
Fall 2017 CSCI 420: Computer Graphics 2.2 Transformations Hao Li http://cs420.hao-li.com 1 OpenGL Transformations Matrices Model-view matrix (4x4 matrix) Projection matrix (4x4 matrix) vertices in 3D Model-view
More informationCSCI E-74. Simulation and Gaming
CSCI E-74 Virtual and Augmented Reality for Simulation and Gaming Fall term 2017 Gianluca De Novi, PhD Lesson 3 General Introduction to OpenGL APIs and TRS Perspective Simulation Perspective simulation
More informationComputer Science 336 Fall 2017 Homework 2
Computer Science 336 Fall 2017 Homework 2 Use the following notation as pseudocode for standard 3D affine transformation matrices. You can refer to these by the names below. There is no need to write out
More informationGL_MODELVIEW transformation
lecture 3 view transformations model transformations GL_MODELVIEW transformation view transformations: How do we map from world coordinates to camera/view/eye coordinates? model transformations: How do
More informationChapter 3: Modeling Transformation
Chapter 3: Modeling Transformation Graphics Programming, 8th Sep. Graphics and Media Lab. Seoul National University 2011 Fall OpenGL Steps Every step in the graphics pipeline is related to the transformation.
More informationComputer Graphics 7: Viewing in 3-D
Computer Graphics 7: Viewing in 3-D In today s lecture we are going to have a look at: Transformations in 3-D How do transformations in 3-D work? Contents 3-D homogeneous coordinates and matrix based transformations
More informationComputer Graphics Geometric Transformations
Computer Graphics 2016 6. Geometric Transformations Hongxin Zhang State Key Lab of CAD&CG, Zhejiang University 2016-10-31 Contents Transformations Homogeneous Co-ordinates Matrix Representations of Transformations
More informationOrder of Transformations
Order of Transformations Because the same transformation is applied to many vertices, the cost of forming a matrix M=ABCD is not significant compared to the cost of computing Mp for many vertices p Note
More information1 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 informationTranslation. 3D Transformations. Rotation about z axis. Scaling. CS 4620 Lecture 8. 3 Cornell CS4620 Fall 2009!Lecture 8
Translation 3D Transformations CS 4620 Lecture 8 1 2 Scaling Rotation about z axis 3 4 Rotation about x axis Rotation about y axis 5 6 Transformations in OpenGL Stack-based manipulation of model-view transformation,
More informationGEOMETRIC TRANSFORMATIONS AND VIEWING
GEOMETRIC TRANSFORMATIONS AND VIEWING 2D and 3D 1/44 2D TRANSFORMATIONS HOMOGENIZED Transformation Scaling Rotation Translation Matrix s x s y cosθ sinθ sinθ cosθ 1 dx 1 dy These 3 transformations are
More informationComputer Graphics: Viewing in 3-D. Course Website:
Computer Graphics: Viewing in 3-D Course Website: http://www.comp.dit.ie/bmacnamee 2 Contents Transformations in 3-D How do transformations in 3-D work? 3-D homogeneous coordinates and matrix based transformations
More informationQuestions HW1 Transform Q/A. Transform. Shaoting Zhang. May 11, 2008
May 11, 2008 My office Hour: Mon. 1:00-3:00pm, Hill-418 All of the slides and codes can be found by clicking my name in the course s website 1 2 3 4 Question 1 What s the result? glcolor3f(1.0,0.0,0.0);
More informationModeling Objects by Polygonal Approximations. Linear and Affine Transformations (Maps)
Modeling Objects by Polygonal Approximations Define volumetric objects in terms of surfaces patches that surround the volume Each surface patch is approximated set of polygons Each polygon is specified
More information蔡侑庭 (Yu-Ting Tsai) National Chiao Tung University, Taiwan. Prof. Wen-Chieh Lin s CG Slides OpenGL 2.1 Specification
蔡侑庭 (Yu-Ting Tsai) Department of Computer Science National Chiao Tung University, Taiwan Prof. Wen-Chieh Lin s CG Slides OpenGL 2.1 Specification OpenGL Programming Guide, Chap. 3 & Appendix F 2 OpenGL
More informationAffine Transformations Computer Graphics Scott D. Anderson
Affine Transformations Computer Graphics Scott D. Anderson 1 Linear Combinations To understand the poer of an affine transformation, it s helpful to understand the idea of a linear combination. If e have
More informationHello, welcome to the video lecture series on Digital Image Processing. So in today's lecture
Digital Image Processing Prof. P. K. Biswas Department of Electronics and Electrical Communications Engineering Indian Institute of Technology, Kharagpur Module 02 Lecture Number 10 Basic Transform (Refer
More informationReading. Hierarchical Modeling. Symbols and instances. Required: Angel, sections , 9.8. Optional:
Reading Required: Angel, sections 9.1 9.6, 9.8 Optional: Hierarchical Modeling OpenGL rogramming Guide, the Red Book, chapter 3 cse457-07-hierarchical 1 cse457-07-hierarchical 2 Symbols and instances Most
More informationTransformations. Mike Bailey. Oregon State University. Oregon State University. Computer Graphics. transformations.
1 Transformations Mike Bailey mjb@cs.oregonstate.edu transformations.pptx Geometry vs. Topology 2 Original Object 4 1 2 4 Geometry: Where things are (e.g., coordinates) 3 1 3 2 Geometry = changed Topology
More information3D 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 informationGraphics and Interaction Transformation geometry and homogeneous coordinates
433-324 Graphics and Interaction Transformation geometry and homogeneous coordinates Department of Computer Science and Software Engineering The Lecture outline Introduction Vectors and matrices Translation
More informationCOMP30019 Graphics and Interaction Transformation geometry and homogeneous coordinates
COMP30019 Graphics and Interaction Transformation geometry and homogeneous coordinates Department of Computer Science and Software Engineering The Lecture outline Introduction Vectors and matrices Translation
More informationAffine Transformation. Edith Law & Mike Terry
Affine Transformation Edith Law & Mike Terry Graphic Models vs. Images Computer Graphics: the creation, storage and manipulation of images and their models Model: a mathematical representation of an image
More informationExercise Max. Points Total 90
University of California San Diego Department of Computer Science CSE167: Introduction to Computer Graphics Fall Quarter 2014 Midterm Examination #1 Thursday, October 30 th, 2014 Instructor: Dr. Jürgen
More informationRendering Pipeline and Coordinates Transforms
Rendering Pipeline and Coordinates Transforms Alessandro Martinelli alessandro.martinelli@unipv.it 16 October 2013 Rendering Pipeline (3): Coordinates Transforms Rendering Architecture First Rendering
More informationCoordinate transformations. 5554: Packet 8 1
Coordinate transformations 5554: Packet 8 1 Overview Rigid transformations are the simplest Translation, rotation Preserve sizes and angles Affine transformation is the most general linear case Homogeneous
More information2D and 3D Transformations AUI Course Denbigh Starkey
2D and 3D Transformations AUI Course Denbigh Starkey. Introduction 2 2. 2D transformations using Cartesian coordinates 3 2. Translation 3 2.2 Rotation 4 2.3 Scaling 6 3. Introduction to homogeneous coordinates
More informationCS4202: Test. 1. Write the letter corresponding to the library name next to the statement or statements that describe library.
CS4202: Test Name: 1. Write the letter corresponding to the library name next to the statement or statements that describe library. (4 points) A. GLUT contains routines that use lower level OpenGL commands
More informationTransformations Computer Graphics I Lecture 4
15-462 Computer Graphics I Lecture 4 Transformations Vector Spaces Affine and Euclidean Spaces Frames Homogeneous Coordinates Transformation Matrices January 23, 2003 [Angel, Ch. 4] Frank Pfenning Carnegie
More informationThis library uses only GL functions but contains code for creating common objects and simplifying viewing.
PES Institute of Technology, Bangalore South Campus (Formerly PES School of Engineering) (Hosur Road, 1KM before Electronic City, Bangalore-560 100) INTERNAL TEST (SCHEME AND SOLUTION) 1 Subject Name:
More informationComputer Graphics: Geometric Transformations
Computer Graphics: Geometric Transformations Geometric 2D transformations By: A. H. Abdul Hafez Abdul.hafez@hku.edu.tr, 1 Outlines 1. Basic 2D transformations 2. Matrix Representation of 2D transformations
More informationPreCalculus Unit 1: Unit Circle Trig Quiz Review (Day 9)
PreCalculus Unit 1: Unit Circle Trig Quiz Review (Day 9) Name Date Directions: You may NOT use Right Triangle Trigonometry for any of these problems! Use your unit circle knowledge to solve these problems.
More informationLecture 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 informationCS452/552; EE465/505. Transformations
CS452/552; EE465/55 Transformations 1-29-15 Outline! Transformations Read: Angel, Chapter 4 (study cube.html/cube.js example) Helpful links: Linear Algebra: Khan Academy Lab1 is posted on github, due:
More information1. We ll look at: Types of geometrical transformation. Vector and matrix representations
Tob Howard COMP272 Computer Graphics and Image Processing 3: Transformations Tob.Howard@manchester.ac.uk Introduction We ll look at: Tpes of geometrical transformation Vector and matri representations
More informationHidden Surface Removal. 3D Graphics with OpenGL. Back-Face Culling
Hidden Surface Removal Back Face Culling 3D Surfaces Bicubic Parametric Bezier Surface Patches 3D Graphics with OpenGL Back-Face Culling Define one side of each polygon to be the visible side That side
More informationInteractive Computer Graphics. Hearn & Baker, chapter D transforms Hearn & Baker, chapter 5. Aliasing and Anti-Aliasing
Interactive Computer Graphics Aliasing and Anti-Aliasing Hearn & Baker, chapter 4-7 D transforms Hearn & Baker, chapter 5 Aliasing and Anti-Aliasing Problem: jaggies Also known as aliasing. It results
More informationCS 591B Lecture 9: The OpenGL Rendering Pipeline
CS 591B Lecture 9: The OpenGL Rendering Pipeline 3D Polygon Rendering Many applications use rendering of 3D polygons with direct illumination Spring 2007 Rui Wang 3D Polygon Rendering Many applications
More informationTransformations. 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 informationEECE 478. Learning Objectives. Learning Objectives. Linear Algebra and 3D Geometry. Linear algebra in 3D. Coordinate systems
EECE 478 Linear Algebra and 3D Geometry Learning Objectives Linear algebra in 3D Define scalars, points, vectors, lines, planes Manipulate to test geometric properties Coordinate systems Use homogeneous
More informationHierarchical Modeling. University of Texas at Austin CS384G - Computer Graphics Fall 2010 Don Fussell
Hierarchical Modeling University of Texas at Austin CS384G - Computer Graphics Fall 2010 Don Fussell Reading Angel, sections 9.1-9.6 [reader pp. 169-185] OpenGL Programming Guide, chapter 3 Focus especially
More informationTransformations Computer Graphics I Lecture 4
15-462 Computer Graphics I Lecture 4 Transformations Vector Spaces Affine and Euclidean Spaces Frames Homogeneous Coordinates Transformation Matrices January 24, 2002 [Angel, Ch. 4] Frank Pfenning Carnegie
More informationQuaternion properties: addition. Introduction to quaternions. Quaternion properties: multiplication. Derivation of multiplication
Introduction to quaternions Definition: A quaternion q consists of a scalar part s, s, and a vector part v ( xyz,,, v 3 : q where, [ s, v q [ s, ( xyz,, q s+ ix + jy + kz i 2 j 2 k 2 1 ij ji k k Quaternion
More informationModeling with Transformations
Modeling with Transformations Prerequisites This module requires some understanding of 3D geometry, particularly a sense of how objects can be moved around in 3-space. The student should also have some
More informationCS475/675: Computer Graphics End-Semester Examination (Solutions), Fall 2016
CS475/675: Computer Graphics End-Semester Examination (Solutions), Fall 2016 This paper has 6 (six) pages and 10 (ten) questions, totalling 80 (eighty) points. No calculators, notes, books, phones, tablets,
More informationAnimating orientation. CS 448D: Character Animation Prof. Vladlen Koltun Stanford University
Animating orientation CS 448D: Character Animation Prof. Vladlen Koltun Stanford University Orientation in the plane θ (cos θ, sin θ) ) R θ ( x y = sin θ ( cos θ sin θ )( x y ) cos θ Refresher: Homogenous
More informationVector Calculus: Understanding the Cross Product
University of Babylon College of Engineering Mechanical Engineering Dept. Subject : Mathematics III Class : 2 nd year - first semester Date: / 10 / 2016 2016 \ 2017 Vector Calculus: Understanding the Cross
More informationUNIT 2 2D TRANSFORMATIONS
UNIT 2 2D TRANSFORMATIONS Introduction With the procedures for displaying output primitives and their attributes, we can create variety of pictures and graphs. In many applications, there is also a need
More informationName: [20 points] Consider the following OpenGL commands:
Name: 2 1. [20 points] Consider the following OpenGL commands: glmatrimode(gl MODELVIEW); glloadidentit(); glrotatef( 90.0, 0.0, 1.0, 0.0 ); gltranslatef( 2.0, 0.0, 0.0 ); glscalef( 2.0, 1.0, 1.0 ); What
More informationCoordinate Frames and Transforms
Coordinate Frames and Transforms 1 Specifiying Position and Orientation We need to describe in a compact way the position of the robot. In 2 dimensions (planar mobile robot), there are 3 degrees of freedom
More informationIntroduction to 3D Graphics with OpenGL. Z-Buffer Hidden Surface Removal. Binghamton University. EngiNet. Thomas J. Watson
Binghamton University EngiNet State University of New York EngiNet Thomas J. Watson School of Engineering and Applied Science WARNING All rights reserved. No Part of this video lecture series may be reproduced
More informationME5286 Robotics Spring 2014 Quiz 1 Solution. Total Points: 30
Page 1 of 7 ME5286 Robotics Spring 2014 Quiz 1 Solution Total Points: 30 (Note images from original quiz are not included to save paper/ space. Please see the original quiz for additional information and
More informationLesson 28: When Can We Reverse a Transformation?
Lesson 8 M Lesson 8: Student Outcomes Students determine inverse matrices using linear systems. Lesson Notes In the final three lessons of this module, students discover how to reverse a transformation
More informationCS 428: Fall Introduction to. Transformations in OpenGL + hierarchical modeling. Andrew Nealen, Rutgers, /21/2009 1
CS 428: Fall 2009 Introduction to Computer Graphics Transformations in OpenGL + hierarchical modeling 9/21/2009 1 Review of affine transformations Use projective geometry staple of CG Euclidean (x,z) (x,y,z)
More informationObjectives. 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 informationDrawing and Coordinate Systems
Drawing and Coordinate Systems Coordinate Systems World Coordinate system World window Screen Coordinate system Viewport Window to viewport mapping Screen Coordinate System Glut OpenGL (0,0) 0) Screen
More informationAffine Transformations. Transforming shape models Combining affine transformations Scene graphs, interactor trees Hit tests on transformed shapes
Affine Transformations Transforming shape models Combining affine transformations Scene graphs, interactor trees Hit tests on transformed shapes Reacll: Shape Models We can think of widgets as shape models
More information2D TRANSFORMATIONS AND MATRICES
2D TRANSFORMATIONS AND MATRICES Representation of Points: 2 x 1 matrix: x y General Problem: B = T A T represents a generic operator to be applied to the points in A. T is the geometric transformation
More informationGame Engineering CS S-05 Linear Transforms
Game Engineering CS420-2016S-05 Linear Transforms David Galles Department of Computer Science University of San Francisco 05-0: Matrices as Transforms Recall that Matrices are transforms Transform vectors
More informationQuiz #2 Review. Transformations & Matrices. Quiz #2 Review. Quiz #2 Review. Example: Change the time on y the clock. Example: Move clock hands
Quiz #2 Review Transformations & Matrices Introduction to Computer Graphics Dot Product a. b a b cos θ a b + a y b y + a z b z a. b a T b thus b [a a y a z ] b y b z a b + a y b y + a z b z Quiz #2 Review
More informationRepresenting 2D Transformations as Matrices
Representing 2D Transformations as Matrices John E. Howland Department of Computer Science Trinity University One Trinity Place San Antonio, Texas 78212-7200 Voice: (210) 999-7364 Fax: (210) 999-7477 E-mail:
More informationLesson 5.6: Angles in Standard Position
Lesson 5.6: Angles in Standard Position IM3 - Santowski IM3 - Santowski 1 Fast Five Opening Exercises! Use your TI 84 calculator:! Evaluate sin(50 ) " illustrate with a diagram! Evaluate sin(130 ) " Q
More informationCS D Transformation. Junqiao Zhao 赵君峤
CS10101001 3D Transformation Junqiao Zhao 赵君峤 Department of Computer Science and Technology College of Electronics and Information Engineering Tongji University Review Translation Linear transformation
More informationLuiz Fernando Martha André Pereira
Computer Graphics for Engineering Numerical simulation in technical sciences Color / OpenGL Luiz Fernando Martha André Pereira Graz, Austria June 2014 To Remember Computer Graphics Data Processing Data
More information3D Viewing Episode 2
3D Viewing Episode 2 1 Positioning and Orienting the Camera Recall that our projection calculations, whether orthographic or frustum/perspective, were made with the camera at (0, 0, 0) looking down the
More informationTransformation. Computer Graphics October. Dr Anton Gerdelan
Transformation Computer Graphics 4052 6 October Dr Anton Gerdelan gerdela@scss.tcd.ie Simplest Example Easiest way to scale our triangle? Easiest way to move our triangle? Demo time First Maths Revision
More informationTransformation Pipeline
Transformation Pipeline Local (Object) Space Modeling World Space Clip Space Projection Eye Space Viewing Perspective divide NDC space Normalized l d Device Coordinatesd Viewport mapping Screen space Coordinate
More informationRotation with Quaternions
Rotation with Quaternions Contents 1 Introduction 1.1 Translation................... 1. Rotation..................... 3 Quaternions 5 3 Rotations Represented as Quaternions 6 3.1 Dynamics....................
More informationShadows in Computer Graphics
Shadows in Computer Graphics Steven Janke November 2014 Steven Janke (Seminar) Shadows in Computer Graphics November 2014 1 / 49 Shadows (from Doom) Steven Janke (Seminar) Shadows in Computer Graphics
More informationAffine Transformations in 3D
Affine Transformations in 3D 1 Affine Transformations in 3D 1 Affine Transformations in 3D General form 2 Translation Elementary 3D Affine Transformations 3 Scaling Around the Origin 4 Along x-axis Shear
More informationIntroduction to Computer Graphics with WebGL
Introduction to Computer Graphics with WebGL Ed Angel Professor Emeritus of Computer Science Founding Director, Arts, Research, Technology and Science Laboratory University of New Mexico WebGL Transformations
More informationFundamental Types of Viewing
Viewings Fundamental Types of Viewing Perspective views finite COP (center of projection) Parallel views COP at infinity DOP (direction of projection) perspective view parallel view Classical Viewing Specific
More informationMobile Application Programming. OpenGL ES 3D
Mobile Application Programming OpenGL ES 3D All Points Transformations xf = xo + tx yf = yo + ty xf = xo sx yf = yo sy xf = xi cosθ - yi sinθ yf = xi sinθ + yi cosθ All Points Transformations xf = xo +
More informationSupplementary Material: The Rotation Matrix
Supplementary Material: The Rotation Matrix Computer Science 4766/6778 Department of Computer Science Memorial University of Newfoundland January 16, 2014 COMP 4766/6778 (MUN) The Rotation Matrix January
More information(Refer Slide Time: 00:04:20)
Computer Graphics Prof. Sukhendu Das Dept. of Computer Science and Engineering Indian Institute of Technology, Madras Lecture 8 Three Dimensional Graphics Welcome back all of you to the lectures in Computer
More information3D 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 informationScene Graphs. CS4620/5620: Lecture 7. Announcements. HW 1 out. PA 1 will be out on Wed
CS4620/5620: Lecture 7 Scene Graphs 1 Announcements HW 1 out PA 1 will be out on Wed Next week practicum will have an office hour type session on Open GL 2 Example Can represent drawing with flat list
More informationTransformations. 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 informationViewing and Projection
15-462 Computer Graphics I Lecture 5 Viewing and Projection Shear Transformation Camera Positioning Simple Parallel Projections Simple Perspective Projections [Angel, Ch. 5.2-5.4] January 30, 2003 [Red
More informationMobile Application Programming: Android. OpenGL ES 3D
Mobile Application Programming: Android OpenGL ES 3D All Points Transformations xf = xo + tx yf = yo + ty xf = xo sx yf = yo sy xf = xi cosθ - yi sinθ yf = xi sinθ + yi cosθ All Points Transformations
More informationT y. x Ax By Cz D. z Ix Jy Kz L. Geometry: Topology: Transformations
Transformations Geometr vs. Topolog Original Object This work is licensed under a Creative Commons Attribution-NonCommercial- NoDerivatives.0 International License Mike Baile mjb@cs.oregonstate.edu Geometr:
More informationCOMP30019 Graphics and Interaction Three-dimensional transformation geometry and perspective
COMP30019 Graphics and Interaction Three-dimensional transformation geometry and perspective Department of Computing and Information Systems The Lecture outline Introduction Rotation about artibrary axis
More information3D Graphics Pipeline II Clipping. Instructor Stephen J. Guy
3D Graphics Pipeline II Clipping Instructor Stephen J. Guy 3D Rendering Pipeline (for direct illumination) 3D Geometric Primitives 3D Model Primitives Modeling Transformation 3D World Coordinates Lighting
More informationINF3320 Computer Graphics and Discrete Geometry
INF3320 Computer Graphics and Discrete Geometry Transforms (part II) Christopher Dyken and Martin Reimers 21.09.2011 Page 1 Transforms (part II) Real Time Rendering book: Transforms (Chapter 4) The Red
More informationOverview. By end of the week:
Overview By end of the week: - Know the basics of git - Make sure we can all compile and run a C++/ OpenGL program - Understand the OpenGL rendering pipeline - Understand how matrices are used for geometric
More information6. Modelview Transformations
6. Modelview Transformations Transformation Basics Transformations map coordinates from one frame of reference to another through matri multiplications Basic transformation operations include: - translation
More informationHierarchical Modeling II. Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts University of New Mexico
Hierarchical Modeling II Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts University of New Mexico Objectives Build a tree-structured model of a humanoid figure
More information2D and 3D Coordinate Systems and Transformations
Graphics & Visualization Chapter 3 2D and 3D Coordinate Systems and Transformations Graphics & Visualization: Principles & Algorithms Introduction In computer graphics is often necessary to change: the
More information