Successfully reported this slideshow.
Upcoming SlideShare
×

# Computer Graphic - Transformations in 2D

2,248 views

Published on

Computer Graphic - Transformations in 2D

Published in: Education
• Full Name
Comment goes here.

Are you sure you want to Yes No
• Yes you are right. There are many research paper writing services available now. But almost services are fake and illegal. Only a genuine service will treat their customer with quality research papers. ⇒ www.HelpWriting.net ⇐

Are you sure you want to  Yes  No
• Hello! I can recommend a site that has helped me. It's called ⇒ www.WritePaper.info ⇐ They helped me for writing my quality research paper.

Are you sure you want to  Yes  No
• If he's shutting you out, here's what's missing... ➢➢➢ https://dwz1.cc/LOSfnztD

Are you sure you want to  Yes  No
• Sie können Hilfe bekommen bei ⇒ www.WritersHilfe.com ⇐. Erfolg und Grüße!

Are you sure you want to  Yes  No
• Fact: Penis Enlargement CAN Work. Here's How. ●●● https://tinyurl.com/yy3nfggr

Are you sure you want to  Yes  No

### Computer Graphic - Transformations in 2D

1. 1.  2 x 1 matrix:  General Problem: [B] = [T] [A] [T] represents a generic operator to be applied to the points in A. T is the geometric transformation matrix. If A & T are known, the transformed points are obtained by calculating B.
2. 2.  Solid body transformations – the above equation is valid for all set of points and lines of the object being transformed.
3. 3. 2x3 3x4  Since A is a 2x3 matrix and B is a 3x4 matrix, the product AB is a 2x4 matrix
4. 4.  T= identity matrix: a=d=1, b=c=0 => x’=x, y’=y.  Scaling & Reflections: b=0, c=0 => x' = a.x, y' = d.y; This is scaling by a in x, d in y. If, a = d > 1, we have enlargement (scale up) & uniform scaling. If, a ≠ d > 1, we have enlargement (scale up) & non uniform scaling. If, 0 < a = d < 1, we have compression (scale down) & uniform scaling. If, 0 < a ≠ d < 1, we have compression (scale down) & non uniform scaling. 1 0 0 1 Sx 0 0
5. 5.  Let Sx= 3, Sy=2:  What if Sx and/or Sy are negative? Get reflections through an axis or plane.  Only diagonal elements are involved in scaling and reflections. (off diagonal = 0)
6. 6.  EX: Let Sx= 5, Sy=5: = X’=5X, Y’=5Y so its scale up & uniform scale.  EX: Let Sx= 1/5, Sy=1/5: = X’=5/X, Y’=5/Y so its scale down & uniform scale. 5 0 0 5 X’ Y’ X Y X’ Y’ 1/5 0 0 1/5 X Y
7. 7. Reflection about Matrix T Y = X X’ = Y Y’ = X EX: (3,4) => (4,3) Y = -X X’ = -Y Y’ = -X EX: (3,4) => (-4,-3) Y = 0 Axis (or X Axis) X’ = X Y’ = -Y EX: (3,4) => (3,-4) X = 0 Axis (or Y Axis) X’ = -X Y’ = Y EX: (3,4) => (-3,4) X = 0 and Y = 0 (Y axis & X axis) X’ = -X Y’ = -Y EX: (3,4) => (-3,-4)
8. 8.  Off diagonal terms are involved in Shearing.  y' depends linearly on x ; This effect is called shear.
9. 9.  Positive Rotations: counter clockwise about the origin.
10. 10.  With clockwise.
11. 11. θ (in degrees) Matrix T 90 180 270 or -90 360 or 0
12. 12.  Rotate the following shape by θ=270 anticlockwise
13. 13.  B = A + Td , where Td = [tx ty]T.  x’= x + tx , y’= y + ty.  Where else are translations introduced? 1. Rotations - when objects are not centered at the origin. 2. Scaling - when objects/lines are not centered at the origin. if line intersects the origin then no translation.  Note: we cannot directly represent translations as matrix multiplication, as we know so far.  We can represent translations in our general transformation by using homogeneous coordinates.
14. 14.  Use a 3 x 3 matrix:  x' = ax + cy + tx  y' = bx + cy + ty  w’ = w  Each point is now represented by a triplet: (x, y, w).  (x/w, y/w) are called the Cartesian coordinates of the homogeneous points.
15. 15.  EX: Given 4 homogeneous points  P0=(3,4,2,.5) P1=(24,32,16,4) P2=(9,12,6,1) P3=(18,24,12,3)  Which of the homogeneous points represent a different 3d point?  P0= (3/.5,4/.5,2/.5)= (6,8,4)  P1=(24/4,32/4,16/4)= (6,8,4)  P2=(9/1,12/1,6/1)= (9,12,6)  P3=(18/3,24/3,12/3)= (6,8,4)  So p2 is different
16. 16.  General Purpose 2D transformations in homogeneous coordinate representation:  Parameters involved in scaling, rotation, reflection and shear are: a, b, c, d.  For translation: If [B]=[T][A] then p,q are translation Parameter. if [B]=[A][T] then m,n are translation parameter.
17. 17.  There are three steps for translation about an arbitrary point in space: 1. Translate by (-Tx, -Ty). 2. Scale by Sx, Sy, where Sx = new coordinate for x/ old Sy = new coordinate for y/ old 3. Translate back by (Tx, Ty)
18. 18.  EX: Apply translation to the matrix according to the shape below. 1 0 16 0 1 4 0 0 1 1 0 -2 0 1 -2 0 0 1 8 0 0 0 2 0 0 0 1 X Y Z
19. 19.  There are three steps for scaling about an arbitrary point in space: 1. Translate by (-Tx, -Ty) 2. Scale by Sx, Sy 3. Translate back by (Tx, Ty)
20. 20.  EX: Apply Scaling up to the matrix such that Tx= 1, Ty= 2, Sx= 4, Sy= 12. = = =  x’= x+7w y’=y+16w w’=w 1 0 -1 0 1 -2 0 0 1 X’ Y’ Z’ 4 0 0 0 12 0 0 0 1 1 0 4 0 1 12 0 0 1 X Y Z 1 0 3 0 1 4 0 0 1 1 0 4 0 1 12 0 0 1 X Y Z 1 0 7 0 1 16 0 0 1 X Y Z
21. 21.  EX: Apply Scaling down to the matrix such that Tx= 1, Ty= 2, Sx= 4, Sy= 12. = 1 0 -4 0 1 -12 0 0 1 X’ Y’ Z’ 1/4 0 0 0 1/6 0 0 0 1 1 0 1 0 1 2 0 0 1 X Y Z
22. 22.  There are three steps for rotation about an arbitrary point in space: 1. Translate by (-Px, -Py). 2. Rotate. 3. Translate back by (Px, Py)
23. 23.  EX: Apply rotation to the matrix such that Px= 1, Py= 4 by θ = 90 . = 1 0 -1 0 1 -4 0 0 1 X’ Y’ Z’ 0 -1 0 1 0 0 0 0 1 1 0 1 0 1 4 0 0 1 X Y Z
24. 24.  There are five steps for reflection about an arbitrary point in space: 1. Translate line to the origin. 2. Rotation about the origin. 3. Reflection matrix. 4. Reverse the rotation. 5. Translate line back.  If the line pass the origin we need only 3 steps (remove step 1 and step 5).
25. 25.  If we want to apply a series of transformations T1, T2, T3 to a set of points, we can do it in two ways: 1. We can calculate p'=T1*p, p''= T2*p', p'''=T3*p'' 2. Calculate T=T1*T2*T3 then p'''=T*p.  Translations: Translate the points by tx1, ty1, then by tx2, ty2.  Scaling: Similar to translations.  Rotations: Rotate by θ1, then by θ2 and its done by 2 ways: 1. Replace θ1, θ2 by θ=θ1+θ2. 2. calculate T1 for θ1, then T2 for θ2 then multiply them.
26. 26.  EX: Apply two scaling to the matrix such that Sx1= 2, Sy1= 3, Sx2=4, Sy2=2.  Way #1  P’= =  P’’= = 2 0 0 0 3 0 0 0 1 1 0 0 0 2 0 0 0 1 1 0 0 0 2 0 0 0 1 2 0 0 0 6 0 0 0 1 4 0 0 0 2 0 0 0 1 2 0 0 0 6 0 0 0 1 8 0 0 0 12 0 0 0 1
27. 27.  Way #2  T = =  P’’= = 2 0 0 0 3 0 0 0 1 4 0 0 0 2 0 0 0 1 8 0 0 0 6 0 0 0 1 8 0 0 0 6 0 0 0 1 1 0 0 0 2 0 0 0 1 8 0 0 0 12 0 0 0 1
28. 28.  EX: Find the new coordinate for the point (3,7,1) if you rotate the point by 180 degree then by 90 degree with clockwise.  Composite rotation : 180 + 90 = 270 degree  Since w=1 the Cartesian coordinate for the point is (3,7) 1 0 -3 0 1 -7 0 0 1 Cos270 Sin270 0 -Sin270 Cos270 0 0 0 1 1 0 3 0 1 7 0 0 1
29. 29.  EX: Suppose you have the point (2,4),rotate the point by 90 degree then by 180 degree the by 45 degree then by 45 degree then scale it by Sx=2 and Sy=4.  Composite rotation : 90+180+45+45 = 360 degree 2 0 0 0 4 0 0 0 1 Cos360 Sin360 0 -Sin360 Cos360 0 0 0 1 2 4 1
30. 30.  EX: Transform the point from left to right.  Sx1= 4/2= 2, Sy1= 5/2= 2.5, Sx2= 7/4, Sy2= 8/5  Sx= 2*7/4= 3.5, Sy= 2.5*8/5= 4 1 0 -2 0 1 -2 0 0 1 3.5 0 0 0 4 0 0 0 1 1 0 7 0 1 8 0 0 1
31. 31.  EX: Transform the point from left to right.  Sx= 3/1= 3, Sy= 3/1= 3 1 0 -1 0 1 -1 0 0 1 3 0 0 0 3 0 0 0 1 1 0 3 0 1 3 0 0 1
32. 32.  Cases where T1 * T2 = T2 * T1: T1 T2 Translation Translation Scaling Scaling Rotation Rotation Uniform Scaling Rotation
33. 33.  EX: If we scale, translate to origin then translate back is it equivalent to translate to origin, scale then translate back? (Sx=2, Sy=3, tx=3, tx=2)  Answer: No, the order of matrix is important. = = 2 0 0 0 3 0 0 0 1 1 0 -3 0 1 -2 0 0 1 1 0 3 0 1 2 0 0 1 2 0 0 0 3 0 0 0 1 2 0 0 0 3 0 0 0 1 1 0 -3 0 1 -2 0 0 1 1 0 3 0 1 2 0 0 1 2 0 3 0 3 4 0 0 1
34. 34.  EX: If we rotate the object by 90 degree then scale it ,is it equivalent to scale it then rotate it by 90 degree ? (Sx=2, Sy=3) = = 0 -1 0 1 0 0 0 0 1 2 0 0 0 3 0 0 0 1 0 -3 0 2 0 0 0 0 1 0 -1 0 1 0 0 0 0 1 2 0 0 0 3 0 0 0 1 0 -2 0 3 0 0 0 0 1
35. 35.  EX: If we rotate the object by 90 degree then scale it ,is it equivalent to scale it then rotate it by 90 degree ? (Sx=4, Sy=4) = = 0 -1 0 1 0 0 0 0 1 4 0 0 0 4 0 0 0 1 0 -4 0 4 0 0 0 0 1 0 -1 0 1 0 0 0 0 1 4 0 0 0 4 0 0 0 1 0 -4 0 4 0 0 0 0 1
36. 36.  EX: Prove that rotation then translation not equal to translation then rotation? = = not equal to the above Cosθ -Sinθ 0 Sinθ Cosθ 0 0 0 1 1 0 - tx 0 1 - ty 0 0 1 Cosθ –Sinθ -txcosθ+tysinθ Sinθ Cosθ -txsinθ-tycosθ 0 0 1 1 0 - tx 0 1 - ty 0 0 1 Cosθ -Sinθ 0 Sinθ Cosθ 0 0 0 1
37. 37.  EX: Given a solid object, if we apply uniform scale then translation to the body, is it the same as we apply translation then uniform scale? = = Sx 0 0 0 Sy 0 0 0 1 1 0 tx 0 1 ty 0 0 1 Sx Sy Sxtx 0 Sy Syty 0 0 11 0 tx 0 1 ty 0 0 1 Sx 0 0 0 Sy 0 0 0 1 Sx 0 tx 0 Sy ty 0 0 1
38. 38.  Screen Coordinates: The coordinate system used to address the screen (device coordinates).  World Coordinates: A user-defined application specific coordinate system having its own units of measure, axis, origin, etc.  Window: The rectangular region of the world that is visible.  Viewport: The rectangular region of the screen space that is used to display the window.
39. 39.  The Purpose is to find the transformation matrix that maps the window in world coordinates to the viewport in screen coordinates.  Window: (x, y space) denoted by: xmin, ymin, xmax, ymax.  Viewport: (u, v space) denoted by: umin, vmin, umax, vmax.
40. 40.  The overall transformation: Translate the window to the origin. Scale it to the size of the viewport. Translate it to the viewport location.
41. 41.  EX: Given (xmin=3, ymin=12, xmax=8, ymax=16) (umin=1, vmin=2, umax=2, vmax=4) Sx=1/5,Sy=1/2 Map from window to view port. 0 0 -3 0 1 -12 0 0 1 1/5 0 0 0 1/2 0 0 0 1 1 0 1 0 1 2 0 0 1
42. 42.  Map from window to view port.  (xmin=20, ymin=10, xmax=40, ymax=50)  (umin=5, vmin=4, umax=10, vmax=12)  Sx=(10-5)/(40-20)= 0.25, Sy=(12-4)/(50-10)=0.2 1 0 -20 0 1 -10 0 0 1 .25 0 0 0 .2 0 0 0 1 1 0 5 0 1 4 0 0 1