220 likes | 351 Views
This documentation explores fundamental graphics transformations such as translations, rotations, scaling, and reflections (mirror transformations) in both 2D and 3D spaces. It discusses how these transformations are utilized for scene composition, creating symmetrical objects, and enabling complex animations by moving objects relative to one another. An insight into matrix representations is provided, including mapping points through transformation matrices. A specific example is illustrated through window to viewport transformation, highlighting the practical applications of these concepts in graphics programming.
E N D
Transformation (Isometry) • Translations • Rotations • Scaling • Mirror
Transformations • One example of a transformation is the window to viewport transformation. • Here we have seen an image in the world window scaled and translated (moved) into a viewport window. • We can build on this transformation to allow us to move objects to more complex locations.
Transformations • A Transformation consists of: • a Rotation • a Scaling and • a Translation • a Shearing • They occur in 2D and 3D
Transformations • Transformations allow for: • scene composition
Transformations • Transformations allow for: • easily create symmetrical objects
Transformations • Transformations allow for: • viewing objects at different angles • computer animation where several objects need to move relative to one another
Transforming Points • A transformation simply takes a point and maps it to another location.
Transforming Points • In the 2D case this means…. • Q = M(P) • where M is some mapping matrix Q P
Matrices : Multiplication 2x - y + 2z = 1 x + 2y - 4z = 3 3x - y + z = 0
Matrices :Identity Matrix 2 3 4 4 7 5 5 2 8 1 0 0 0 1 0 0 0 1 2 3 4 4 7 5 5 2 8 x =
Further Reading See Rowe – Chapter 2 for a discussion on homogenous coordinates and further examples of matrix transformations. Also see discussions and technical articles on: www.gamedeveloper.com www.gamedev.net www.ddj.com Dr. Dobb’s Journal - been around since 1976