Geometric Transformations

Size: px
Start display at page:

Download "Geometric Transformations"

Transcription

1 CS INTRODUCTION TO COMPUTER GRAPHICS Geometric Transformations D and D Andries an Dam 9/9/7 /46

2 CS INTRODUCTION TO COMPUTER GRAPHICS How do we use Geometric Transformations? (/) Objects in a scene at the lowest leel are a collection of ertices These objects hae location, orientation, size Correspond to transformations: Translation (T), Rotation (R), and Scaling (S) Andries an Dam 9/9/7 /46

3 CS INTRODUCTION TO COMPUTER GRAPHICS How do we use Geometric Transformations? (/) A scene has a camera/iew point from which the scene is iewed The camera has some location and some orientation in D-space These correspond to Translation and Rotation transformations Need other tpes of iewing transformations as well we ll learn about them soon! Andries an Dam 9/9/7 /46

4 CS INTRODUCTION TO COMPUTER GRAPHICS Some Linear Algebra Concepts... D coordinate geometr Vectors in D space and D space Dot product and cross product definitions and uses Vector and matri notation and algebra Identit matri Multiplicatie associatiit for matrices E.g. A(BC) = (AB)C Matri transpose and inerse definition, use, and calculation Homogeneous coordinates (,, z, w) You will need to understand these concepts! Linear algebra help session notes: Andries an Dam 9/9/7 4/46

5 CS INTRODUCTION TO COMPUTER GRAPHICS Linear Transformations (/4) We represent ectors as bold-italic letters () and scalars as italic letters (c) Vector addition: head to tail, add components Multipling a ector b a scalar changes the ector s magnitude Recall that a basis for a ector space is a set of ectors with the following properties:. The ectors in the set are linearl independent. An ector in the ector space can be epressed as a linear combination of the basis ectors: V = c V + c V a b = a + b Andries an Dam 9/9/7 5/46

6 CS INTRODUCTION TO COMPUTER GRAPHICS Linear Transformations (/4) Definition of a linear function/map f - straight line in D, hperplane in n-d Vector addition: f(+w) = f() + f(w) for all and w in the domain of f Scalar multiplication: f(c) = cf() for all scalars c and elements in the domain Linear functions can be epressed as (a +b, c +d ) Eample: f() = f(, ) := ( +, - +4 ) Now let and w be two elements in the domain of f f(+w) = f( +w, +w ) // b the rule of ector addition = (( +w )+( +w ), -( +w )+4( +w )) = ( +, - +4 ) + (w +w, -w +4w ) = f() + f(w) Let = e, w = e We can check the second propert the same wa Andries an Dam 9/9/7 6/46 e f(e ) f(e +e ) e +e e f(e )

7 CS INTRODUCTION TO COMPUTER GRAPHICS Linear Transformations (/4) Linear functions can be represented as matrices! The function from the preious slide, f() = f(, ) := ( +, - +4 ) can be represented as: f() = M, where M = 4 and = Properties of linear functions: Leaes origin inariant Maps parallelograms to (possibl distorted) parallelograms Let M be a matri representing a linear transformation. If M is inertible, then there is a sequence of rotations, scales, and/or shears that can perform the mapping represented b that linear transformation Andries an Dam 9/9/7 7/46

8 CS INTRODUCTION TO COMPUTER GRAPHICS Linear Transformations (4/4) Graphical use: transformations of points around the origin (leaes the origin inariant) These include Scaling and Rotations Translation is not a linear function (moes the origin) An linear transformation of a point will result in another point in the same coordinate sstem, transformed about the origin Aside: How do we know the origin is inariant from the definition of linearit? Andries an Dam 9/9/7 8/46

9 CS INTRODUCTION TO COMPUTER GRAPHICS Andries an Dam 9/9/7 9/46 Linear Transformations as Matrices (/) Linear transformations can be represented as inertible (non-singular) matrices Let s start with D transformations. These can be represented b matrices: A transformation of an arbitrar column ector = has the form: T = a b c d é ë ê ù û ú d c b a d c b a T

10 CS INTRODUCTION TO COMPUTER GRAPHICS Andries an Dam 9/9/7 /46 Linear Transformations as Matrices (/) Let e and e be the standard basis ectors: Now substitute each basis ector for to get: Notice that the columns of the matri representation of our transformation matri T are precisel T applied to e and e : This gies us a strateg for deriing transformation matrices! We can derie the columns of a transformation matri one b one b considering how our desired transformation affects each of the standard unit ectors c a d c b a T d b d c b a T, e e T(e ) = a c é ë ê ù û ú, T(e ) = b d é ë ê ù û ú

11 CS INTRODUCTION TO COMPUTER GRAPHICS Andries an Dam 9/9/7 /46 Scaling in D (/) Side effect: House shifts position relatie to origin Scale b, b (S =, S = ) = (original erte); = (new erte) = S Derie S b determining how e and e should be transformed (scale in X b S ) (scale in Y b S ) Thus we obtain ' ' s s S 6 9 é ë ê ù û ú

12 CS INTRODUCTION TO COMPUTER GRAPHICS Scaling in D (/) S is a diagonal matri; we can quickl check using matri multiplication that our deriation is correct: S s s s s ' ' S multiplies each coordinate of b the appropriate scaling factor, as epected In general, the i th entr of D, where D is diagonal, is (D[i,i] * [i]) Properties of scaling to look out for: Does not presere angles between lines in the plane (ecept when scaling is uniform, i.e. s = s ) If the object doesn t start at the origin, scaling will moe it closer to or farther from the origin (often not desired) Andries an Dam 9/9/7 /46

13 CS INTRODUCTION TO COMPUTER GRAPHICS Rotation in D (/) Rotate b θ about the origin = R θ, where ' ' = (original erte) = (new erte) Derie R θ b determining how e and e should be transformed: é e = ù é ê ú cosq ù ê ú ë û ë sinq û (first column of R θ ) é e = ù é ê ú -sinq ù ê ú(second column of R θ ) ë û ë cosq û é Þ R q = ê ë cosq -sinq ù ú sinq cosq û Andries an Dam 9/9/7 /46

14 CS INTRODUCTION TO COMPUTER GRAPHICS Rotation in D (/) Let s tr matri-ector multiplication R θ = cos sin sin cos cos sin sin cos ' ' ' '= cosq - sinq '= sinq + cosq Other properties of rotation: Preseres lengths in objects and angles between parts of objects (rigid-bod rotation) For objects not centered at the origin, an unwanted translation might be introduced (rotation is alwas about the origin) Andries an Dam 9/9/7 4/46

15 CS INTRODUCTION TO COMPUTER GRAPHICS What about translation? Translation is not a linear transformation (the origin is not inariant) Therefore, it can t be represented as a inertible matri Question: Is there another solution? Answer: Yes, = + t, where t = d d Howeer, using ector addition is not consistent with our method of treating transformations as matrices If we could treat all transformations in a consistent manner, i.e., with matri representation, then could combine transformations b composing their matrices Let s tr using a matri again How? Homogeneous Coordinates: add an additional dimension, the w- ais, and an etra coordinate, the w- component Thus D -> D (effectiel the hperspace for embedding D space) Andries an Dam 9/9/7 5/46

16 CS INTRODUCTION TO COMPUTER GRAPHICS Homogeneous Coordinates (/) Allow epression of all three D transformations as matrices We start with the point P d on the plane and appl a mapping to bring it to the w- plane in the hperspace P d (,) P h (w, w, w), w The resulting (, ) coordinates in our new point P h are different from the original (,), since = w, = w P h (,, w), w Andries an Dam 9/9/7 6/46

17 CS INTRODUCTION TO COMPUTER GRAPHICS Homogeneous Coordinates (/) Once we hae this point, we can appl a homogenized ersion of our T, R and S transformation matrices (net slides) to get a new point in the hperspace Finall, we want to obtain the corresponding point in D-space, so perform the inerse of the preious mapping (diide all entries b w) The erte = is now represented as = Andries an Dam 9/9/7 7/46

18 CS INTRODUCTION TO COMPUTER GRAPHICS Andries an Dam 9/9/7 8/46 Homogeneous Coordinates (/) The transformations we use will alwas map points in the hperplane defined b w = to other such points. (That wa, we don t hae to diide b w to get our equialent point in D) In other words, we want our transformations T to map points = to points = How do we achiee this with the matrices we hae alread deried? For linear transformations (i.e. scaling and rotation), embed the eisting matri in the upper-left of a new matri: ' ' d c b a

19 CS INTRODUCTION TO COMPUTER GRAPHICS Andries an Dam 9/9/7 9/46 Back to Translation Our translation matri (T) can now be represented b embedding the translation ector in the right column: To erif that this is the right matri, multipl it b our homogenized point: Coordinates hae been translated, and is still homogeneous d d T T ' d d d d

20 CS INTRODUCTION TO COMPUTER GRAPHICS Transformations Homogenized Let s homogenize our all matrices! Doesn t affect linearit of scaling and rotation Our new transformation matrices look like this Transformation Scaling Rotation Translation Matri s s Note: These transformations are called affine transformations, which means the presere ratios of distances between points on a straight line (but not necessaril (, ) ) é ê ê ê ëê ù ú ú ú ûú é cosq -sinq ê ê sinq cosq ê ë é ê ê ê ë d d ù ú ú ú û ù ú ú ú û Andries an Dam 9/9/7 /46

21 CS INTRODUCTION TO COMPUTER GRAPHICS Eamples Scaling: Scale b 5 in the direction, 7 in the 5 7 Rotation: Rotate b o cos() sin() sin() cos() Translation: Translate b -6 in the direction, +8 in the é ê ê ê ë -6 8 ù ú ú ú û Andries an Dam 9/9/7 /46

22 CS INTRODUCTION TO COMPUTER GRAPHICS Before we continue! Vectors s. Points Up until now, we e onl used the notion of a point in our D space We now present a distinction between points and ectors We used homogeneous coordinates to more conenientl represent translation; hence points are represented as (,, ) T A ector can be rotated/scaled, but not translated (can think of it as alwas starting at origin), so don t use the homogeneous coordinate: (,, ) T That wa, the translation matri won t hae an affect on our ectors. For now, let s focus on just our points (tpicall ertices) Andries an Dam 9/9/7 /46

23 CS INTRODUCTION TO COMPUTER GRAPHICS Inerses When we want to undo a transformation, we ll need to find the matri s inerse. Thanks to homogenization, the are all inertible! Transformation Matri Inerse Does it make sense? Scaling If ou scale something b factor a, the inerse is scaling b /a Rotation Translation Inerse of rotation b θ is rotation b θ. The properties sin(-θ) = -sin(θ) and cos(-θ) = cos(θ) gie this matri. Also, the matri is orthonormal, so inerse is just the transpose (see net slide). If ou translate b, the inerse is translation b - Andries an Dam 9/9/7 /46

24 CS INTRODUCTION TO COMPUTER GRAPHICS Andries an Dam 9/9/7 4/46 A moment of appreciation for linear algebra The inerse of a rotation matri M is just its transpose M T! That s reall conenient, so let s understand how it works using orthonormal matrices Take a rotation matri M = [ ] (where each i is a ector) First note some properties of M The columns are orthogonal to each other: i j = (i j) Columns hae unit length: i = Let s see what multipling M T and M produces: Using the properties aboe, we see that this is the identit matri, so M T = M - z z z z z z

25 CS INTRODUCTION TO COMPUTER GRAPHICS More with Homogeneous Coordinates Some uses we ll see later: Placing sub-objects in parent s coordinate sstem to construct hierarchical scene graph Transforming primities in their own coordinate sstems View olume normalization Mapping arbitrar iew olume into canonical iew olume along z-ais Parallel (orthographic, oblique) and perspectie projections Perspectie transformation (turn iewing pramid into a cuboid to turn perspectie projection into parallel projection) after perspectie foreshortening Andries an Dam 9/9/7 5/46

26 CS INTRODUCTION TO COMPUTER GRAPHICS Composition of Transformations (D) (/) We now hae a number of tools at our disposal; we can combine them! An object in a scene uses man transformations in sequence. How do we represent this in terms of functions? Transformation is a function; b associatiit, we can compose functions: (f o g)( i ) This is the same as first appling g, then appling f: f( g( i ) ) Consider our functions f and g as matrices (M and M ) and our input as a ector Our composition is equialent to M M Andries an Dam 9/9/7 6/46

27 CS INTRODUCTION TO COMPUTER GRAPHICS Composition of Transformations (D) (/) We can now form compositions of transformation matrices to form a more comple transformation For eample, TRS, which scales a point, then rotates it, then translates it: dcos sin s d sin cos s Note that we appl the matrices in sequence right to left. We can use associatiit to compose them first; it is often useful to be able to appl a single matri if, for eample, we want to use it to transform man points at once. Important: order matters! Matri multiplication is NOT commutatie. Be sure to check out the Transformation Game at applets/transformationgame/transformation_game_guide.html Let s see an eample Andries an Dam 9/9/7 7/46

28 CS INTRODUCTION TO COMPUTER GRAPHICS Not commutatie 6 Translate b = 6, =, then rotate b 45 o Rotate b 45 o, then translate b = 6, = Y X Andries an Dam 9/9/7 8/46

29 CS INTRODUCTION TO COMPUTER GRAPHICS Andries an Dam Start: Goal: Important concept: make the problem simpler Translate object to origin first, scale, rotate, and translate back: Appl to all ertices 9/9/7 9/46 Composition (an eample) (D) (/) 4 4 cos9 sin 9 sin 9 cos9 RST T -Rotate 9 o -Uniform scale 4 -Both around object s center, not the origin

30 CS INTRODUCTION TO COMPUTER GRAPHICS Andries an Dam 9/9/7 /46 Composition (an eample) (D) (/) T - RST But what if we mied up the order? Let s tr RT - ST: Oops! We scaled properl, but when we rotated the object, it s center was not at the origin, so its position was shifted. Order matters! 4 4 cos9 sin 9 sin 9 cos9

31 CS INTRODUCTION TO COMPUTER GRAPHICS Aside: Skewing/shearing Skew an object to the side, like shearing a card deck b displacing each card relatie to the preious one What phsical situations mirror this behaior? Squares become parallelograms; -coordinates skew to right, stas the same Y Skew tan D non-homogeneous X Notice that the base of the house (at = ) remains horizontal but shifts right. Wh? tan Skew D homogeneous Andries an Dam 9/9/7 /46

32 CS INTRODUCTION TO COMPUTER GRAPHICS Andries an Dam 9/9/7 /46 Inerses Reisited What is the inerse of a sequence of transformations? (M M M n ) - = M n - M n- - M - Inerse of a sequence of transformations is the composition of the inerses of each transformation in reerse order (wh?) Sa we want to do the opposite transformation of the eample on slide 7 What will our sequence look like? (T - RST) - = T - S - R - T We still translate to the origin first, then translate back at the end! cos9 sin 9 sin 9 cos9 / / T R S T - - -

33 CS INTRODUCTION TO COMPUTER GRAPHICS Andries an Dam Windowing transformation maps contents of D clip rectangle ( window ) to a iewport rectangle on the screen, e.g., interior canas ( client area ) of a window manager s window; also called window-to-iewport transformation Sends rectangle with bounding coordinates (u, ), (u, ) to (, ), (, ) The transformation matri here is: 9/9/7 /46 Aside: Windowing Transformations (CG terminolog) ) ) /( ( ) ) /( ( ) ) /( ( ) ) /( ( u u u u u u

34 CS INTRODUCTION TO COMPUTER GRAPHICS Aside: Transforming Coordinate Aes We understand linear transformations as changing the position of ertices relatie to the standard aes Can also think of transforming the coordinate aes themseles Rotation Scaling Translation Just as in matri composition, be careful of which order ou modif our coordinate sstem! Andries an Dam 9/9/7 4/46

35 CS INTRODUCTION TO COMPUTER GRAPHICS Dimension++ (D!) How should we treat geometric transformations in D? Just add one more coordinate/ais! A point is represented as z A matri for a linear transformation T can be represented as [ T(e ) T(e ) T(e )] where e is the standard basis ector along the z-ais, But remember to use homogeneous coordinates! Embed scale and rotation matrices as upper left submatrices and translation ectors as upper right subectors of the right column Andries an Dam 9/9/7 5/46

36 CS INTRODUCTION TO COMPUTER GRAPHICS Transformations in D Transformation Matri Comments Scaling s s Looks just like the D ersion. We just added an s z term. Rotation (see net slide) In D, onl one ais of rotation; now there are infinitel man! Must take all into account. See net slide... s z Translation d d dz Similar to the D ersion, just with one more entr dz, representing change in the z- direction. Andries an Dam 9/9/7 6/46

37 CS INTRODUCTION TO COMPUTER GRAPHICS Rodrigues s Formula Rotation b angle θ around ector u = [u u u z ] T Note: this is an arbitrar unit ector u in z-space Here s a not so friendl-looking rotation matri u u cos u u u z ( cos ) ( cos ) u ( cos ) u z sin sin u u ( cos ) u cos u ( cos ) ( cos ) u sin sin This is called the coordinate form of Rodrigues s formula Let s tr a different approach u u z z u u u z ( cos ) u sin uz ( cos ) u sin cos u ( cos ) z Andries an Dam 9/9/7 7/46

38 CS INTRODUCTION TO COMPUTER GRAPHICS Rotating ais b ais (/) Eer rotation can be represented as the composition of different angles of counter-clockwise rotation around aes, namel ais in the z plane b ψ; ais in the z plane b θ; z ais in the plane b ϕ Also known as Euler angles, make problem of rotation much easier R z (ψ): rotation about ais b ψ é ê ê ê ëê cos -sin sin cos ù ú ú ú ûú R z (θ): rotation about ais b θ é cosq sinq ù ê ú ê ú ê -sinq cosq ú ê ë ú û R (ϕ): rotation about z ais b ϕ é cosf -sinf ù ê ú ê sinf cosf ú ê ú ëê ûú Note these differ onl in how the submatri is embedded in the homogeneous matri, but the row-column order is different for R z You can compose these matrices to form a composite rotation matri Andries an Dam 9/9/7 8/46

39 CS INTRODUCTION TO COMPUTER GRAPHICS Rotating ais b ais (/) It would still be difficult to find the angles to rotate b, gien arbitrar ais u and specified angle ψ Solution? Make the problem easier b mapping u to one of the principal aes Step : Find a θ to rotate around ais to put u in the plane Step : Then find a ϕ to rotate around z the z ais to align u with the ais (Now that u is in a conenient alignment, we can do our transformation rotation for erte!) Step : Rotate b ψ around ais (which is coincident with u ais) Step 4: Finall, undo the alignment rotations (inerse). The onl rotation we e presered is the one around ais u b ψ, which was our goal Rotation matri: M = R - z (θ)r - (ϕ)r z (ψ)r (ϕ)r z (θ) ϕ θ u u ψ Andries an Dam 9/9/7 9/46

40 CS INTRODUCTION TO COMPUTER GRAPHICS Andries an Dam Inerses are once again parallel to their D ersions Composition works eactl the same wa 9/9/7 4/46 Inerses and Composition in D! Transformation Inerse Matri Scaling Rotation R z - (ψ) R z - (θ) R - (ϕ) Translation / / / z s s s dz d d cos sin sin cos, cos sin sin cos, cos sin sin cos

41 CS INTRODUCTION TO COMPUTER GRAPHICS Andries an Dam 9/9/7 4/46 Eample in D! Let s take some D object, sa a cube centered at (,,) Rotate clockwise in object s space b o around ais, 6 o around, and 9 o around z Scale in object space b in the, in the, and in the z Translate b (,,4) in world space Transformation sequence: TT - S R R z R z T o, where T translates to (,): cos sin sin cos cos6 sin 6 sin 6 cos6 cos9 sin 9 sin 9 cos9 4 T T - S R R z R z T

42 CS INTRODUCTION TO COMPUTER GRAPHICS Transformations and the scene graph (/5) Objects are tpicall composites: Scene Graph ROBOT upper bod lower bod stanchion base head trunk arm arm D scenes are often stored in a directed acclic graph (DAG) called a scene graph WPF (Windows Presentation Foundation) Open Scene Graph (used in the Cae) XD (VRML was a precursor to XD) most game engines Tpical scene graph format: objects (cubes, sphere, cone, polhedra etc.): stored as nodes (default: unit size at origin) attributes (color, teture map, etc.): stored as separate nodes Transformations: also nodes Eample scenegraph from a game engine Andries an Dam 9/9/7 4/46

43 CS INTRODUCTION TO COMPUTER GRAPHICS Transformations and the scene graph (/5) For our assignments use simplified format: Attributes stored as a components of each object node (no separate attribute node) A transform node affects its subtree Onl leaf nodes are graphical objects. All internal nodes that are not transform nodes are object group nodes Andries an Dam 9/9/7 4/46

44 CS INTRODUCTION TO COMPUTER GRAPHICS Transformations and the scene graph (/5) Step : Various transformations are applied to each of the leaes (object primities head, base, etc.) Step : Transformations are then applied to groups of objects (form upper and lower bod, etc ) Represents a transformation This format means that instead of designing new primities for eer single shape we need, we can just appl transformations to a smaller set of primities to form comple composite D shapes. Together the aboe hierarch of transformations forms the robot scene as a whole Andries an Dam 9/9/7 44/46

45 CS INTRODUCTION TO COMPUTER GRAPHICS Transformations and the scene graph (4/5) A cumulatie transformation matri (CTM) builds as ou moe up the tree. Note that higher leel transformation matrices are appended to the front of the sequence Eample: M M M M 4 For object (o), CTM = M M 5 For o, CTM = M M For o, CTM = M M 4 M 5 For a erte in o, position in world coordinate sstem is CTM = (M M 4 M 5 ) object nodes (geometr) transformation nodes group nodes Andries an Dam 9/9/7 45/46

46 CS INTRODUCTION TO COMPUTER GRAPHICS Transformations and the scene graph (5/5) You can easil reuse groups of objects (sub-trees in the scene graph) if the hae been defined alread This might occur if ou hae multiple similar components to our scene. For eample, the robot s arms Here, group has been used twice. Transformations defined within group itself do not change; there are different CTMs for each use of group as a whole obj root T group T T group obj group T T 4 obj group group T 5 T 6 obj4 T T s. T T T 4 Andries an Dam 9/9/7 46/46

47 CS INTRODUCTION TO COMPUTER GRAPHICS Further Reading More information can be found in the tetbook Read Chapters and for more detail and adanced topics on transformations Chapter 7 discusses the D/D coordinate space geometr Chapter goes into more detail about some of the linear algebra inoled in graphics Andries an Dam 9/9/7 47/46

Computer Graphics. Geometric Transformations

Computer Graphics. Geometric Transformations Contents coordinate sstems scalar values, points, vectors, matrices right-handed and left-handed coordinate sstems mathematical foundations transformations mathematical descriptions of geometric changes,

More information

Computer Graphics. Geometric Transformations

Computer Graphics. Geometric Transformations Computer Graphics Geometric Transformations Contents coordinate sstems scalar values, points, vectors, matrices right-handed and left-handed coordinate sstems mathematical foundations transformations mathematical

More information

CS 450: COMPUTER GRAPHICS 2D TRANSFORMATIONS SPRING 2016 DR. MICHAEL J. REALE

CS 450: COMPUTER GRAPHICS 2D TRANSFORMATIONS SPRING 2016 DR. MICHAEL J. REALE CS 45: COMUTER GRAHICS 2D TRANSFORMATIONS SRING 26 DR. MICHAEL J. REALE INTRODUCTION Now that we hae some linear algebra under our resectie belts, we can start ug it in grahics! So far, for each rimitie,

More information

CSE328 Fundamentals of Computer Graphics: Theory, Algorithms, and Applications

CSE328 Fundamentals of Computer Graphics: Theory, Algorithms, and Applications CSE328 Fundamentals of Computer Graphics: Theor, Algorithms, and Applications Hong in State Universit of New York at Ston Brook (Ston Brook Universit) Ston Brook, New York 794-44 Tel: (63)632-845; Fa:

More information

CS770/870 Spring 2017 Transformations

CS770/870 Spring 2017 Transformations CS770/870 Spring 2017 Transformations Coordinate sstems 2D Transformations Homogeneous coordinates Matrices, vectors, points Coordinate Sstems Coordinate sstems used in graphics Screen coordinates: the

More information

GEOMETRIC TRANSFORMATIONS AND VIEWING

GEOMETRIC 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 information

What and Why Transformations?

What and Why Transformations? 2D transformations What and Wh Transformations? What? : The geometrical changes of an object from a current state to modified state. Changing an object s position (translation), orientation (rotation)

More information

Image Warping (Szeliski Sec 2.1.2)

Image Warping (Szeliski Sec 2.1.2) Image Warping (Szeliski Sec 2..2) http://www.jeffre-martin.com CS94: Image Manipulation & Computational Photograph Aleei Efros, UC Berkele, Fall 7 Some slides from Steve Seitz Image Transformations image

More information

Modeling Transformations

Modeling Transformations Modeling Transformations Michael Kazhdan (601.457/657) HB Ch. 5 FvDFH Ch. 5 Overview Ra-Tracing so far Modeling transformations Ra Tracing Image RaTrace(Camera camera, Scene scene, int width, int heigh,

More information

Computer Graphics. P04 Transformations. Aleksandra Pizurica Ghent University

Computer Graphics. P04 Transformations. Aleksandra Pizurica Ghent University Computer Graphics P4 Transformations Aleksandra Pizurica Ghent Universit Telecommunications and Information Processing Image Processing and Interpretation Group Transformations in computer graphics Goal:

More information

Notes. University of British Columbia

Notes. University of British Columbia Notes Drop-bo is no. 14 You can hand in our assignments Assignment 0 due Fri. 4pm Assignment 1 is out Office hours toda 16:00 17:00, in lab or in reading room Uniersit of Uniersit of Chapter 4 - Reminder

More information

Modeling Transformations

Modeling Transformations Modeling Transformations Michael Kazhdan (601.457/657) HB Ch. 5 FvDFH Ch. 5 Announcement Assignment 2 has been posted: Due: 10/24 ASAP: Download the code and make sure it compiles» On windows: just build

More information

Determining the 2d transformation that brings one image into alignment (registers it) with another. And

Determining the 2d transformation that brings one image into alignment (registers it) with another. And Last two lectures: Representing an image as a weighted combination of other images. Toda: A different kind of coordinate sstem change. Solving the biggest problem in using eigenfaces? Toda Recognition

More information

1. We ll look at: Types of geometrical transformation. Vector and matrix representations

1. 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 information

GLOBAL EDITION. Interactive Computer Graphics. A Top-Down Approach with WebGL SEVENTH EDITION. Edward Angel Dave Shreiner

GLOBAL EDITION. Interactive Computer Graphics. A Top-Down Approach with WebGL SEVENTH EDITION. Edward Angel Dave Shreiner GLOBAL EDITION Interactive Computer Graphics A Top-Down Approach with WebGL SEVENTH EDITION Edward Angel Dave Shreiner This page is intentionall left blank. 4.10 Concatenation of Transformations 219 in

More information

CS F-07 Objects in 2D 1

CS F-07 Objects in 2D 1 CS420-2010F-07 Objects in 2D 1 07-0: Representing Polgons We want to represent a simple polgon Triangle, rectangle, square, etc Assume for the moment our game onl uses these simple shapes No curves for

More information

Viewing in 3D (Chapt. 6 in FVD, Chapt. 12 in Hearn & Baker)

Viewing in 3D (Chapt. 6 in FVD, Chapt. 12 in Hearn & Baker) Viewing in 3D (Chapt. 6 in FVD, Chapt. 2 in Hearn & Baker) Viewing in 3D s. 2D 2D 2D world Camera world 2D 3D Transformation Pipe-Line Modeling transformation world Bod Sstem Viewing transformation Front-

More information

Today s class. Geometric objects and transformations. Informationsteknologi. Wednesday, November 7, 2007 Computer Graphics - Class 5 1

Today s class. Geometric objects and transformations. Informationsteknologi. Wednesday, November 7, 2007 Computer Graphics - Class 5 1 Toda s class Geometric objects and transformations Wednesda, November 7, 27 Computer Graphics - Class 5 Vector operations Review of vector operations needed for working in computer graphics adding two

More information

CS Computer Graphics: Transformations & The Synthetic Camera

CS Computer Graphics: Transformations & The Synthetic Camera CS 543 - Computer Graphics: Transformations The Snthetic Camera b Robert W. Lindeman gogo@wpi.edu (with help from Emmanuel Agu ;-) Introduction to Transformations A transformation changes an objects Size

More information

Two Dimensional Viewing

Two Dimensional Viewing Two Dimensional Viewing Dr. S.M. Malaek Assistant: M. Younesi Two Dimensional Viewing Basic Interactive Programming Basic Interactive Programming User controls contents, structure, and appearance of objects

More information

3-Dimensional Viewing

3-Dimensional Viewing CHAPTER 6 3-Dimensional Vieing Vieing and projection Objects in orld coordinates are projected on to the vie plane, hich is defined perpendicular to the vieing direction along the v -ais. The to main tpes

More information

Image Warping : Computational Photography Alexei Efros, CMU, Fall Some slides from Steve Seitz

Image Warping : Computational Photography Alexei Efros, CMU, Fall Some slides from Steve Seitz Image Warping http://www.jeffre-martin.com Some slides from Steve Seitz 5-463: Computational Photograph Aleei Efros, CMU, Fall 2 Image Transformations image filtering: change range of image g() T(f())

More information

Editing and Transformation

Editing and Transformation Lecture 5 Editing and Transformation Modeling Model can be produced b the combination of entities that have been edited. D: circle, arc, line, ellipse 3D: primitive bodies, etrusion and revolved of a profile

More information

Image Warping. Some slides from Steve Seitz

Image Warping.   Some slides from Steve Seitz Image Warping http://www.jeffre-martin.com Some slides from Steve Seitz 5-463: Computational Photograph Aleei Efros, CMU, Fall 26 Image Warping image filtering: change range of image g() T(f()) f T f image

More information

Homogeneous Coordinates

Homogeneous Coordinates COMS W4172 3D Math 2 Steven Feiner Department of Computer Science Columbia Universit New York, NY 127 www.cs.columbia.edu/graphics/courses/csw4172 Februar 1, 218 1 Homogeneous Coordinates w X W Y X W Y

More information

IMGD The Game Development Process: 3D Modeling and Transformations

IMGD The Game Development Process: 3D Modeling and Transformations IMGD - The Game Development Process: 3D Modeling and Transformations b Robert W. Lindeman (gogo@wpi.edu Kent Quirk (kent_quirk@cognito.com (with lots of input from Mark Clapool! Overview of 3D Modeling

More information

CS559: Computer Graphics

CS559: Computer Graphics CS559: Computer Graphics Lecture 8: 3D Transforms Li Zhang Spring 28 Most Slides from Stephen Chenne Finish Color space Toda 3D Transforms and Coordinate sstem Reading: Shirle ch 6 RGB and HSV Green(,,)

More information

Scene Graphs & Modeling Transformations COS 426

Scene Graphs & Modeling Transformations COS 426 Scene Graphs & Modeling Transformations COS 426 3D Object Representations Points Range image Point cloud Surfaces Polgonal mesh Subdivision Parametric Implicit Solids Voels BSP tree CSG Sweep High-level

More information

Flux Integrals. Solution. We want to visualize the surface together with the vector field. Here s a picture of exactly that:

Flux Integrals. Solution. We want to visualize the surface together with the vector field. Here s a picture of exactly that: Flu Integrals The pictures for problems # - #4 are on the last page.. Let s orient each of the three pictured surfaces so that the light side is considered to be the positie side. Decide whether each of

More information

(x, y) (ρ, θ) ρ θ. Polar Coordinates. Cartesian Coordinates

(x, y) (ρ, θ) ρ θ. Polar Coordinates. Cartesian Coordinates Coordinate Sstems Point Representation in two dimensions Cartesian Coordinates: (; ) Polar Coordinates: (; ) (, ) ρ θ (ρ, θ) Cartesian Coordinates Polar Coordinates p = CPS1, 9: Computer Graphics D Geometric

More information

[ ] [ ] Orthogonal Transformation of Cartesian Coordinates in 2D & 3D. φ = cos 1 1/ φ = tan 1 [ 2 /1]

[ ] [ ] Orthogonal Transformation of Cartesian Coordinates in 2D & 3D. φ = cos 1 1/ φ = tan 1 [ 2 /1] Orthogonal Transformation of Cartesian Coordinates in 2D & 3D A vector is specified b its coordinates, so it is defined relative to a reference frame. The same vector will have different coordinates in

More information

Introduction to Homogeneous Transformations & Robot Kinematics

Introduction to Homogeneous Transformations & Robot Kinematics Introduction to Homogeneous Transformations & Robot Kinematics Jennifer Ka Rowan Universit Computer Science Department. Drawing Dimensional Frames in 2 Dimensions We will be working in -D coordinates,

More information

Modeling Transformations

Modeling Transformations שיעור 3 גרפיקה ממוחשבת תשס"ח ב ליאור שפירא Modeling Transformations Heavil based on: Thomas Funkhouser Princeton Universit CS 426, Fall 2 Modeling Transformations Specif transformations for objects Allows

More information

CS 548: COMPUTER GRAPHICS REVIEW: OVERVIEW OF POLYGONS SPRING 2015 DR. MICHAEL J. REALE

CS 548: COMPUTER GRAPHICS REVIEW: OVERVIEW OF POLYGONS SPRING 2015 DR. MICHAEL J. REALE CS 548: COMPUTER GRPHICS REVIEW: OVERVIEW OF POLYGONS SPRING 05 DR. MICHEL J. RELE NOTE: COUNTERCLOCKWISE ORDER ssuming: Right-handed sstem Vertices in counterclockwise order looking at front of polgon

More information

y = f(x) x (x, f(x)) f(x) g(x) = f(x) + 2 (x, g(x)) 0 (0, 1) 1 3 (0, 3) 2 (2, 3) 3 5 (2, 5) 4 (4, 3) 3 5 (4, 5) 5 (5, 5) 5 7 (5, 7)

y = f(x) x (x, f(x)) f(x) g(x) = f(x) + 2 (x, g(x)) 0 (0, 1) 1 3 (0, 3) 2 (2, 3) 3 5 (2, 5) 4 (4, 3) 3 5 (4, 5) 5 (5, 5) 5 7 (5, 7) 0 Relations and Functions.7 Transformations In this section, we stud how the graphs of functions change, or transform, when certain specialized modifications are made to their formulas. The transformations

More information

SELFATOPES AND THEIR PROPERTIES

SELFATOPES AND THEIR PROPERTIES SELFATOPES AND THEIR PROPERTIES SARAH GILLES Introduction Through toric arieties, poltopes hae been connected with projectie algebraic geometr, cones and fans, ring ideals, and group actions Poltopes are

More information

Transformations of Functions. 1. Shifting, reflecting, and stretching graphs Symmetry of functions and equations

Transformations of Functions. 1. Shifting, reflecting, and stretching graphs Symmetry of functions and equations Chapter Transformations of Functions TOPICS.5.. Shifting, reflecting, and stretching graphs Smmetr of functions and equations TOPIC Horizontal Shifting/ Translation Horizontal Shifting/ Translation Shifting,

More information

CS770/870 Spring 2017 Transformations

CS770/870 Spring 2017 Transformations CS770/870 Spring 2017 Transformations Coordinate sstems 2D Transformations Homogeneous coordinates Matrices, vectors, points 01/29/2017 1 Coordinate Sstems Coordinate sstems used in graphics Screen coordinates:

More information

CMSC 425: Lecture 10 Basics of Skeletal Animation and Kinematics

CMSC 425: Lecture 10 Basics of Skeletal Animation and Kinematics : Lecture Basics of Skeletal Animation and Kinematics Reading: Chapt of Gregor, Game Engine Architecture. The material on kinematics is a simplification of similar concepts developed in the field of robotics,

More information

4. Two Dimensional Transformations

4. Two Dimensional Transformations 4. Two Dimensional Transformations CS362 Introduction to Computer Graphics Helena Wong, 2 In man applications, changes in orientations, sizes, and shapes are accomplished with geometric transformations

More information

CSE528 Computer Graphics: Theory, Algorithms, and Applications

CSE528 Computer Graphics: Theory, Algorithms, and Applications CSE528 Computer Graphics: Theor, Algorithms, and Applications Hong Qin State Universit of New York at Ston Brook (Ston Brook Universit) Ston Brook, New York 794--44 Tel: (63)632-845; Fa: (63)632-8334 qin@cs.sunsb.edu

More information

To Do. Course Outline. Course Outline. Goals. Motivation. Foundations of Computer Graphics (Fall 2012) CS 184, Lecture 3: Transformations 1

To Do. Course Outline. Course Outline. Goals. Motivation. Foundations of Computer Graphics (Fall 2012) CS 184, Lecture 3: Transformations 1 Fondations of Compter Graphics (Fall 212) CS 184, Lectre 3: Transformations 1 http://inst.eecs.berkele.ed/~cs184 Sbmit HW b To Do Start looking at HW 1 (simple, bt need to think) Ais-angle rotation and

More information

3D Geometry and Camera Calibration

3D Geometry and Camera Calibration 3D Geometr and Camera Calibration 3D Coordinate Sstems Right-handed vs. left-handed 2D Coordinate Sstems ais up vs. ais down Origin at center vs. corner Will often write (u, v) for image coordinates v

More information

Image Warping. Some slides from Steve Seitz

Image Warping.   Some slides from Steve Seitz Image Warping http://www.jeffre-martin.com Some slides from Steve Seitz 5-463: Computational Photograph Aleei Efros, CMU, Spring 2 Image Transformations image filtering: change range of image g() = T(f())

More information

2D/3D Geometric Transformations and Scene Graphs

2D/3D Geometric Transformations and Scene Graphs 2D/3D Geometric Transformations and Scene Graphs Week 4 Acknowledgement: The course slides are adapted from the slides prepared by Steve Marschner of Cornell University 1 A little quick math background

More information

Introduction to Homogeneous Transformations & Robot Kinematics

Introduction to Homogeneous Transformations & Robot Kinematics Introduction to Homogeneous Transformations & Robot Kinematics Jennifer Ka, Rowan Universit Computer Science Department Januar 25. Drawing Dimensional Frames in 2 Dimensions We will be working in -D coordinates,

More information

Geometric Model of Camera

Geometric Model of Camera Geometric Model of Camera Dr. Gerhard Roth COMP 42A Winter 25 Version 2 Similar Triangles 2 Geometric Model of Camera Perspective projection P(X,Y,Z) p(,) f X Z f Y Z 3 Parallel lines aren t 4 Figure b

More information

Transformations II. Week 2, Wed Jan 17

Transformations II. Week 2, Wed Jan 17 Universit of British Columbia CPSC 34 Computer Graphics Jan-Apr 27 Tamara Munzner Transformations II Week 2, Wed Jan 7 http://www.ugrad.cs.ubc.ca/~cs34/vjan27 Readings for Jan 5-22 FCG Chap 6 Transformation

More information

What does OpenGL do?

What does OpenGL do? Theor behind Geometrical Transform What does OpenGL do? So the user specifies a lot of information Ee Center Up Near, far, UP EE Left, right top, bottom, etc. f b CENTER left right top bottom What does

More information

Objectives. Geometry. Basic Elements. Coordinate-Free Geometry. Transformations to Change Coordinate Systems. Scalars

Objectives. Geometry. Basic Elements. Coordinate-Free Geometry. Transformations to Change Coordinate Systems. Scalars Objecties Geometry CS 432 Interactie Computer Graphics Prof. Daid E. Breen Department of Computer Science Introduce the elements of geometry - Scalars - Vectors - Points Deelop mathematical operations

More information

Topic 2 Transformations of Functions

Topic 2 Transformations of Functions Week Topic Transformations of Functions Week Topic Transformations of Functions This topic can be a little trick, especiall when one problem has several transformations. We re going to work through each

More information

Uses of Transformations. 2D transformations Homogeneous coordinates. Transformations. Transformations. Transformations. Transformations and matrices

Uses of Transformations. 2D transformations Homogeneous coordinates. Transformations. Transformations. Transformations. Transformations and matrices Uses of Transformations 2D transformations Homogeneous coordinates odeling: position and resie parts of a comple model; Viewing: define and position the virtual camera Animation: define how objects move/change

More information

Week 3. Topic 5 Asymptotes

Week 3. Topic 5 Asymptotes Week 3 Topic 5 Asmptotes Week 3 Topic 5 Asmptotes Introduction One of the strangest features of a graph is an asmptote. The come in three flavors: vertical, horizontal, and slant (also called oblique).

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

More on Transformations. COS 426, Spring 2019 Princeton University

More on Transformations. COS 426, Spring 2019 Princeton University More on Transformations COS 426, Spring 2019 Princeton Universit Agenda Grab-bag of topics related to transformations: General rotations! Euler angles! Rodrigues s rotation formula Maintaining camera transformations!

More information

Lecture 4: Viewing. Topics:

Lecture 4: Viewing. Topics: Lecture 4: Viewing Topics: 1. Classical viewing 2. Positioning the camera 3. Perspective and orthogonal projections 4. Perspective and orthogonal projections in OpenGL 5. Perspective and orthogonal projection

More information

Transformations II. Arbitrary 3D Rotation. What is its inverse? What is its transpose? Can we constructively elucidate this relationship?

Transformations II. Arbitrary 3D Rotation. What is its inverse? What is its transpose? Can we constructively elucidate this relationship? Utah School of Computing Fall 25 Transformations II CS46 Computer Graphics From Rich Riesenfeld Fall 25 Arbitrar 3D Rotation What is its inverse? What is its transpose? Can we constructivel elucidate this

More information

1-1. Functions. Lesson 1-1. What You ll Learn. Active Vocabulary. Scan Lesson 1-1. Write two things that you already know about functions.

1-1. Functions. Lesson 1-1. What You ll Learn. Active Vocabulary. Scan Lesson 1-1. Write two things that you already know about functions. 1-1 Functions What You ll Learn Scan Lesson 1- Write two things that ou alread know about functions. Lesson 1-1 Active Vocabular New Vocabular Write the definition net to each term. domain dependent variable

More information

CT5510: Computer Graphics. Transformation BOCHANG MOON

CT5510: Computer Graphics. Transformation BOCHANG MOON CT5510: Computer Graphics Transformation BOCHANG MOON 2D Translation Transformations such as rotation and scale can be represented using a matrix M.., How about translation? No way to express this using

More information

Modeling with CMU Mini-FEA Program

Modeling with CMU Mini-FEA Program Modeling with CMU Mini-FEA Program Introduction Finite element analsis (FEA) allows ou analze the stresses and displacements in a bod when forces are applied. FEA determines the stresses and displacements

More information

Objectives. Geometry. Coordinate-Free Geometry. Basic Elements. Transformations to Change Coordinate Systems. Scalars

Objectives. Geometry. Coordinate-Free Geometry. Basic Elements. Transformations to Change Coordinate Systems. Scalars Objecties Geometry CS Interactie Computer Graphics Prof. Daid E. Breen Department of Computer Science Introduce the elements of geometry - Scalars - Vectors - Points Deelop mathematical operations among

More information

Image Warping. Many slides from Alyosha Efros + Steve Seitz. Photo by Sean Carroll

Image Warping. Many slides from Alyosha Efros + Steve Seitz. Photo by Sean Carroll Image Warping Man slides from Alosha Efros + Steve Seitz Photo b Sean Carroll Morphing Blend from one object to other with a series of local transformations Image Transformations image filtering: change

More information

Image Warping. Computational Photography Derek Hoiem, University of Illinois 09/28/17. Photo by Sean Carroll

Image Warping. Computational Photography Derek Hoiem, University of Illinois 09/28/17. Photo by Sean Carroll Image Warping 9/28/7 Man slides from Alosha Efros + Steve Seitz Computational Photograph Derek Hoiem, Universit of Illinois Photo b Sean Carroll Reminder: Proj 2 due monda Much more difficult than project

More information

Modeling Transformations

Modeling Transformations Modeling Transformations Thomas Funkhouser Princeton Universit CS 426, Fall 2 Modeling Transformations Specif transformations for objects Allos definitions of objects in on coordinate sstems Allos use

More information

Modeling Transformations

Modeling Transformations Transformations Transformations Specif transformations for objects o Allos definitions of objects in on coordinate sstems o Allos use of object definition multiple times in a scene Adam Finkelstein Princeton

More information

Interactive Computer Graphics. Warping and morphing. Warping and Morphing. Warping and Morphing. Lecture 14+15: Warping and Morphing. What is.

Interactive Computer Graphics. Warping and morphing. Warping and Morphing. Warping and Morphing. Lecture 14+15: Warping and Morphing. What is. Interactive Computer Graphics Warping and morphing Lecture 14+15: Warping and Morphing Lecture 14: Warping and Morphing: Slide 1 Lecture 14: Warping and Morphing: Slide 2 Warping and Morphing What is Warping

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

Computer Graphics. 2D transformations. Transforma3ons in computer graphics. Overview. Basic classes of geometric transforma3ons

Computer Graphics. 2D transformations. Transforma3ons in computer graphics. Overview. Basic classes of geometric transforma3ons Transforma3ons in computer graphics omputer Graphics Transforma3ons leksandra Piurica Goal: introduce methodolog to hange coordinate sstem Move and deform objects Principle: transforma3ons are applied

More information

Warping, Morphing and Mosaics

Warping, Morphing and Mosaics Computational Photograph and Video: Warping, Morphing and Mosaics Prof. Marc Pollefes Dr. Gabriel Brostow Toda s schedule Last week s recap Warping Morphing Mosaics Toda s schedule Last week s recap Warping

More information

Polar Functions Polar coordinates

Polar Functions Polar coordinates 548 Chapter 1 Parametric, Vector, and Polar Functions 1. What ou ll learn about Polar Coordinates Polar Curves Slopes of Polar Curves Areas Enclosed b Polar Curves A Small Polar Galler... and wh Polar

More information

BUMP MAPPING. Programação 3D Simulação e Jogos Prof. João A. Madeiras Pereira MEIC-A/IST

BUMP MAPPING. Programação 3D Simulação e Jogos Prof. João A. Madeiras Pereira MEIC-A/IST UMP MAPPIG Programação 3D Simulação e Jogos Prof. João A. Madeiras Pereira MEIC-A/IS Eamples Shading Generating ormal Map ase teture (RG) Height map (Gre scale) ormal map (normal encoded RG) Displacement

More information

Double Integrals in Polar Coordinates

Double Integrals in Polar Coordinates Double Integrals in Polar Coordinates. A flat plate is in the shape of the region in the first quadrant ling between the circles + and +. The densit of the plate at point, is + kilograms per square meter

More information

Perspective Projection Transformation

Perspective Projection Transformation Perspective Projection Transformation Where does a point of a scene appear in an image?? p p Transformation in 3 steps:. scene coordinates => camera coordinates. projection of camera coordinates into image

More information

Unit 5 Lesson 2 Investigation 1

Unit 5 Lesson 2 Investigation 1 Name: Investigation 1 Modeling Rigid Transformations CPMP-Tools Computer graphics enable designers to model two- and three-dimensional figures and to also easil manipulate those figures. For eample, interior

More information

Glossary alternate interior angles absolute value function Example alternate exterior angles Example angle of rotation Example

Glossary alternate interior angles absolute value function Example alternate exterior angles Example angle of rotation Example Glossar A absolute value function An absolute value function is a function that can be written in the form, where is an number or epression. alternate eterior angles alternate interior angles Alternate

More information

The 3-D Graphics Rendering Pipeline

The 3-D Graphics Rendering Pipeline The 3-D Graphics Rendering Pipeline Modeling Trival Rejection Illumination Viewing Clipping Projection Almost ever discussion of 3-D graphics begins here Seldom are an two versions drawn the same wa Seldom

More information

CS 2770: Intro to Computer Vision. Multiple Views. Prof. Adriana Kovashka University of Pittsburgh March 14, 2017

CS 2770: Intro to Computer Vision. Multiple Views. Prof. Adriana Kovashka University of Pittsburgh March 14, 2017 CS 277: Intro to Computer Vision Multiple Views Prof. Adriana Kovashka Universit of Pittsburgh March 4, 27 Plan for toda Affine and projective image transformations Homographies and image mosaics Stereo

More information

Systems of Linear Equations

Systems of Linear Equations Sstems of Linear Equations Gaussian Elimination Tpes of Solutions A linear equation is an equation that can be written in the form: a a a n n b The coefficients a i and the constant b can be real or comple

More information

Transformations. Examples of transformations: shear. scaling

Transformations. Examples of transformations: shear. scaling Transformations Eamples of transformations: translation rotation scaling shear Transformations More eamples: reflection with respect to the y-ais reflection with respect to the origin Transformations Linear

More information

Today. The Graphics Pipeline: Projective Transformations. Last Week: Schedule. XForms Forms Library. Questions?

Today. The Graphics Pipeline: Projective Transformations. Last Week: Schedule. XForms Forms Library. Questions? Toda The Graphics Pipeline: Projectie Reiew & Schedule Ra Casting / Tracing s. The Graphics Pipeline Projectie Last Week: Animation & Quaternions Finite Element Simulations collisions, fracture, & deformation

More information

Computer Graphics. Jeng-Sheng Yeh 葉正聖 Ming Chuan University (modified from Bing-Yu Chen s slides)

Computer Graphics. Jeng-Sheng Yeh 葉正聖 Ming Chuan University (modified from Bing-Yu Chen s slides) Computer Graphics Jeng-Sheng Yeh 葉正聖 Ming Chuan Universit (modified from Bing-Yu Chen s slides) Viewing in 3D 3D Viewing Process Specification of an Arbitrar 3D View Orthographic Parallel Projection Perspective

More information

Module 2, Section 2 Graphs of Trigonometric Functions

Module 2, Section 2 Graphs of Trigonometric Functions Principles of Mathematics Section, Introduction 5 Module, Section Graphs of Trigonometric Functions Introduction You have studied trigonometric ratios since Grade 9 Mathematics. In this module ou will

More information

Intermediate Algebra. Gregg Waterman Oregon Institute of Technology

Intermediate Algebra. Gregg Waterman Oregon Institute of Technology Intermediate Algebra Gregg Waterman Oregon Institute of Technolog c 2017 Gregg Waterman This work is licensed under the Creative Commons Attribution 4.0 International license. The essence of the license

More information

Graphics and Interaction Transformation geometry and homogeneous coordinates

Graphics 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 information

Transformations III. Week 2, Fri Jan 19

Transformations III. Week 2, Fri Jan 19 Universit of British Columbia CPSC 34 Computer Graphics Jan-Apr 2007 Tamara Munzner Transformations III Week 2, Fri Jan 9 http://www.ugrad.cs.ubc.ca/~cs34/vjan2007 Readings for Jan 5-22 FCG Chap 6 Transformation

More information

COMP30019 Graphics and Interaction Transformation geometry and homogeneous coordinates

COMP30019 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 information

MEM380 Applied Autonomous Robots Winter Robot Kinematics

MEM380 Applied Autonomous Robots Winter Robot Kinematics MEM38 Applied Autonomous obots Winter obot Kinematics Coordinate Transformations Motivation Ultimatel, we are interested in the motion of the robot with respect to a global or inertial navigation frame

More information

Trigonometric Identities

Trigonometric Identities Trigonometric Identities 6.5 SKILL BUILDER An equation that is true for all alues of the ariable in it is called an identit. For instance, the epression 4( 3) 8 is an eample of an algebraic identit because

More information

Modeling Transformations Revisited

Modeling Transformations Revisited Modeling Transformations Revisited Basic 3D Transformations Translation Scale Shear Rotation 3D Transformations Same idea as 2D transformations o Homogeneous coordinates: (,,z,w) o 44 transformation matrices

More information

2D Image Transforms Computer Vision (Kris Kitani) Carnegie Mellon University

2D Image Transforms Computer Vision (Kris Kitani) Carnegie Mellon University 2D Image Transforms 16-385 Computer Vision (Kris Kitani) Carnegie Mellon University Extract features from an image what do we do next? Feature matching (object recognition, 3D reconstruction, augmented

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

Lecture 4: Transforms. Computer Graphics CMU /15-662, Fall 2016

Lecture 4: Transforms. Computer Graphics CMU /15-662, Fall 2016 Lecture 4: Transforms Computer Graphics CMU 15-462/15-662, Fall 2016 Brief recap from last class How to draw a triangle - Why focus on triangles, and not quads, pentagons, etc? - What was specific to triangles

More information

2D and 3D Transformations AUI Course Denbigh Starkey

2D 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 information

Image Warping CSE399b, Spring 07 Computer Vision

Image Warping CSE399b, Spring 07 Computer Vision Image Warping CSE399b, Spring 7 Computer Vision http://maps.a9.com http://www.cs.ubc.ca/~mbrown/autostitch/autostitch.html http://www.cs.ubc.ca/~mbrown/autostitch/autostitch.html Autostiching on A9.com

More information

2D Object Definition (1/3)

2D Object Definition (1/3) 2D Object Definition (1/3) Lines and Polylines Lines drawn between ordered points to create more complex forms called polylines Same first and last point make closed polyline or polygon Can intersect itself

More information

Reteaching Golden Ratio

Reteaching Golden Ratio Name Date Class Golden Ratio INV 11 You have investigated fractals. Now ou will investigate the golden ratio. The Golden Ratio in Line Segments The golden ratio is the irrational number 1 5. c On the line

More information

To Do. Demo (Projection Tutorial) Motivation. What we ve seen so far. Outline. Foundations of Computer Graphics (Fall 2012) CS 184, Lecture 5: Viewing

To Do. Demo (Projection Tutorial) Motivation. What we ve seen so far. Outline. Foundations of Computer Graphics (Fall 2012) CS 184, Lecture 5: Viewing Foundations of Computer Graphics (Fall 0) CS 84, Lecture 5: Viewing http://inst.eecs.berkele.edu/~cs84 To Do Questions/concerns about assignment? Remember it is due Sep. Ask me or TAs re problems Motivation

More information

Conceptual Design of Planar Retainer Mechanisms for Bottom-Opening SMIF Environment

Conceptual Design of Planar Retainer Mechanisms for Bottom-Opening SMIF Environment Proceedings of the th World Congress in Mechanism and Machine Science August 8~, 003, Tianjin, China China Machiner Press, edited b Tian Huang Conceptual Design of Planar Retainer Mechanisms for Bottom-Opening

More information

Image Metamorphosis By Affine Transformations

Image Metamorphosis By Affine Transformations Image Metamorphosis B Affine Transformations Tim Mers and Peter Spiegel December 16, 2005 Abstract Among the man was to manipulate an image is a technique known as morphing. Image morphing is a special

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