Download presentation
Presentation is loading. Please wait.
Published byAshlie Robertson Modified over 9 years ago
1
Transformations Angel 4.6-4.8 Angel: Interactive Computer Graphics5E © Addison-Wesley 2009 1
2
Objectives Introduce standard transformations –Rotation –Translation –Scaling –Shear Derive homogeneous coordinate transformation matrices Angel: Interactive Computer Graphics 5E © Addison-Wesley 2009 2
3
General Transformations A transformation maps points to other points and/or vectors to other vectors Angel: Interactive Computer Graphics 5E © Addison-Wesley 2009 3 Q=T(P) v=T(u)
4
Affine Transformations Line preserving Characteristic of many physically important transformations –Rigid body transformations: rotation, translation –Scaling, shear Importance in graphics is that we need only transform endpoints of line segments and let implementation draw line segment between the transformed endpoints Angel: Interactive Computer Graphics 5E © Addison-Wesley 2009 4
5
Pipeline Implementation Angel: Interactive Computer Graphics 5E © Addison-Wesley 2009 5 transformationrasterizer u u v T T(u) T(v) T(u) T(v) vertices pixels frame buffer (from application program)
6
Notation We will be working with both coordinate-free representations of transformations and representations within a particular frame P, Q, R: points in an affine space u, v, w : vectors in an affine space , , : scalars p, q, r : representations of points -array of 4 scalars in homogeneous coordinates u, v, w : representations of vectors -array of 4 scalars in homogeneous coordinates Angel: Interactive Computer Graphics 5E © Addison-Wesley 2009 6
7
Translation Move (translate, displace) a point to a new location Displacement determined by a vector d –Three degrees of freedom –P’=P+d Angel: Interactive Computer Graphics 5E © Addison-Wesley 2009 7 P P’ d
8
How many ways? Although we can move a point to a new location in infinite ways, when we move many points there is usually only one way Angel: Interactive Computer Graphics 5E © Addison-Wesley 2009 8 object translation: every point displaced by same vector
9
Translation Using Representations Using the homogeneous coordinate representation in some frame p=[ x y z 1] T p’=[x’ y’ z’ 1] T d=[dx dy dz 0] T Hence p’ = p + d or x’=x+d x y’=y+d y z’=z+d z Angel: Interactive Computer Graphics 5E © Addison-Wesley 2009 9 note that this expression is in four dimensions and expresses point = vector + point
10
Translation Matrix We can also express translation using a 4 x 4 matrix T in homogeneous coordinates p ’= Tp where T = T (d x, d y, d z ) = This form is better for implementation because all affine transformations can be expressed this way and multiple transformations can be concatenated together Angel: Interactive Computer Graphics 5E © Addison-Wesley 2009 10
11
Consider rotation about the origin by degrees –radius stays the same, angle increases by Rotation (2D) Angel: Interactive Computer Graphics 5E © Addison-Wesley 2009 11 x' = x cos – y sin y' = x sin + y cos x = r cos y = r sin x' = r cos ( y' = r sin (
12
Rotation about the z axis Angel: Interactive Computer Graphics 5E © Addison-Wesley 2009 12 Rotation about z axis in three dimensions leaves all points with the same z –Equivalent to rotation in two dimensions in planes of constant z –or in homogeneous coordinates p ’= R z ( )p x’ = x cos – y sin y’ = x sin + y cos z’ = z
13
Rotation Matrix Angel: Interactive Computer Graphics 5E © Addison-Wesley 2009 13 R = R z ( ) =
14
Rotation about x and y axes Angel: Interactive Computer Graphics 5E © Addison-Wesley 2009 14 Same argument as for rotation about z axis –For rotation about x axis, x is unchanged –For rotation about y axis, y is unchanged R = R x ( ) = R = R y ( ) =
15
Scaling Angel: Interactive Computer Graphics 5E © Addison-Wesley 2009 15 S = S(s x, s y, s z ) = x’=s x x y’=s y x z’=s z x p’=Sp Expand or contract along each axis (fixed point of origin)
16
Reflection Angel: Interactive Computer Graphics 5E © Addison-Wesley 2009 16 corresponds to negative scale factors original s x = -1 s y = 1 s x = -1 s y = -1s x = 1 s y = -1
17
Inverses Angel: Interactive Computer Graphics 5E © Addison-Wesley 2009 17 Although we could compute inverse matrices by general formulas, we can use simple geometric observations –Translation: T -1 (d x, d y, d z ) = T (-d x, -d y, -d z ) –Rotation: R -1 ( ) = R(- ) Holds for any rotation matrix Note that since cos(- ) = cos( ) and sin(- )=- sin( ) R -1 ( ) = R T ( ) – Scaling: S -1 (s x, s y, s z ) = S(1/s x, 1/s y, 1/s z )
18
Shear Helpful to add one more basic transformation Equivalent to pulling faces in opposite directions Angel: Interactive Computer Graphics 5E © Addison-Wesley 2009 18
19
Shear Matrix Consider simple shear along x axis Angel: Interactive Computer Graphics 5E © Addison-Wesley 2009 19 x’ = x + y cot y’ = y z’ = z H( ) =
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.