Unit - 2 Transformation in Computer Graphics PDF
Unit - 2 Transformation in Computer Graphics PDF
We have discussed-
1. Translation
2. Rotation
3. Scaling
4. Reflection
5. Shear
In Computer graphics,
In a two dimensional plane, the object size can be changed along X direction as well as Y
direction.
1. Shearing in X direction
2. Shearing in Y direction
Let-
Shearing in X Axis-
For homogeneous coordinates, the above shearing matrix may be represented as a 3 x 3 matrix
as-
Shearing in Y Axis-
Xnew = Xold
Ynew = Yold + Shy x Xold
Problem-01:
Given a triangle with points (1, 1), (0, 0) and (1, 0). Apply shear parameter 2 on X axis and 2 on Y
axis and find out the new coordinates of the object.
Solution-
Given-
Old corner coordinates of the triangle = A (1, 1), B(0, 0), C(1, 0)
Shearing parameter towards X direction (Shx) = 2
Shearing parameter towards Y direction (Shy) = 2
Shearing in X Axis-
Thus, New coordinates of the triangle after shearing in X axis = A (3, 1), B(0, 0), C(1, 0).
Shearing in Y Axis-
Xnew = Xold = 1
Ynew = Yold + Shy x Xold = 1 + 2 x 1 = 3
Xnew = Xold = 0
Ynew = Yold + Shy x Xold = 0 + 2 x 0 = 0
Xnew = Xold = 1
Ynew = Yold + Shy x Xold = 0 + 2 x 1 = 2
Thus, New coordinates of the triangle after shearing in Y axis = A (1, 3), B(0, 0), C(1, 2).
We have discussed-
Let-
Reflection On X-Axis:
Xnew = Xold
Ynew = -Yold
Reflection On Y-Axis:
Xnew = -Xold
Ynew = Yold
For homogeneous coordinates, the above reflection matrix may be represented as a 3 x 3 matrix
as-
Problem-01:
Given a triangle with coordinate points A(3, 4), B(6, 4), C(5, 6). Apply the reflection on the X axis
and obtain the new coordinates of the object.
Solution-
Given-
Old corner coordinates of the triangle = A (3, 4), B(6, 4), C(5, 6)
Reflection has to be taken on the X axis
Xnew = Xold = 3
Ynew = -Yold = -4
Xnew = Xold = 6
Ynew = -Yold = -4
Xnew = Xold = 5
Ynew = -Yold = -6
Thus, New coordinates of the triangle after reflection = A (3, -4), B(6, -4), C(5, -6).
Problem-02:
Given a triangle with coordinate points A(3, 4), B(6, 4), C(5, 6). Apply the reflection on the Y axis
and obtain the new coordinates of the object.
Solution-
Given-
Old corner coordinates of the triangle = A (3, 4), B(6, 4), C(5, 6)
Reflection has to be taken on the Y axis
Xnew = -Xold = -3
Ynew = Yold = 4
Xnew = -Xold = -6
Ynew = Yold = 4
Xnew = -Xold = -5
Ynew = Yold = 6
Thus, New coordinates of the triangle after reflection = A (-3, 4), B(-6, 4), C(-5, 6).
We have discussed-
Let-
Xnew = Xold x Sx
Ynew = Yold x Sy
Problem-01:
Given a square object with coordinate points A(0, 3), B(3, 3), C(3, 0), D(0, 0). Apply the scaling
parameter 2 towards X axis and 3 towards Y axis and obtain the new coordinates of the object.
Solution-
Given-
Old corner coordinates of the square = A (0, 3), B(3, 3), C(3, 0), D(0, 0)
Scaling factor along X axis = 2
Scaling factor along Y axis = 3
Xnew = Xold x Sx = 0 x 2 = 0
Ynew = Yold x Sy = 3 x 3 = 9
Xnew = Xold x Sx = 3 x 2 = 6
Ynew = Yold x Sy = 3 x 3 = 9
Xnew = Xold x Sx = 3 x 2 = 6
Ynew = Yold x Sy = 0 x 3 = 0
Xnew = Xold x Sx = 0 x 2 = 0
Ynew = Yold x Sy = 0 x 3 = 0
Thus, New coordinates of the square after scaling = A (0, 9), B(6, 9), C(6, 0), D(0, 0).
We have discussed-
1. Translation
2. Rotation
3. Scaling
4. Reflection
5. Shear
In Computer graphics,
Consider a point object O has to be rotated from one angle to another in a 2D plane.
Let-
For homogeneous coordinates, the above rotation matrix may be represented as a 3 x 3 matrix
as-
Problem-01:
Given a line segment with starting point as (0, 0) and ending point as (4, 4). Apply 30 degree
rotation anticlockwise direction on the line segment and find out the new coordinates of the line.
Solution-
We rotate a straight line by its end points with the same angle. Then, we re-draw a line between
the new end points.
Given-
Let new ending coordinates of the line after rotation = (Xnew, Ynew).
= 4 x cos30º – 4 x sin30º
= 4 x (√3 / 2) – 4 x (1 / 2)
= 2√3 – 2
= 2(√3 – 1)
= 2(1.73 – 1)
= 1.46
Ynew
= 4 x sin30º + 4 x cos30º
= 4 x (1 / 2) + 4 x (√3 / 2)
= 2 + 2√3
= 2(1 + √3)
= 2(1 + 1.73)
= 5.46
Thus, New ending coordinates of the line after rotation = (1.46, 5.46).
Alternatively,
In matrix form, the new ending coordinates of the line after rotation may be obtained as-
Thus, New ending coordinates of the line after rotation = (1.46, 5.46).
Problem-02:
Given a triangle with corner coordinates (0, 0), (1, 0) and (1, 1). Rotate the triangle by 90 degree
anticlockwise direction and find out the new coordinates.
Solution-
We rotate a polygon by rotating each vertex of it with the same rotation angle.
Given-
Old corner coordinates of the triangle = A (0, 0), B(1, 0), C(1, 1)
Rotation angle = θ = 90º
Xnew
= 0 x cos90º – 0 x sin90º
=0
Ynew
= 0 x sin90º + 0 x cos90º
=0
Xnew
= Xold x cosθ – Yold x sinθ
= 1 x cos90º – 0 x sin90º
=0
Ynew
= 1 x sin90º + 0 x cos90º
=1+0
=1
Xnew
= 1 x cos90º – 1 x sin90º
=0–1
= -1
Ynew
= 1 x sin90º + 1 x cos90º
=1+0
=1
Thus, New coordinates of the triangle after rotation = A (0, 0), B(0, 1), C(-1, 1).
In Computer graphics,
Transformation Techniques-
1. Translation
2. Rotation
3. Scaling
4. Reflection
5. Shear
In Computer graphics,
Consider a point object O has to be moved from one position to another in a 2D plane.
Let-
Initial coordinates of the object O = (Xold, Yold)
New coordinates of the object O after translation = (Xnew, Ynew)
Translation vector or Shift vector = (Tx, Ty)
This translation is achieved by adding the translation coordinates to the old coordinates of the
object as-
Problem-01:
Given a circle C with radius 10 and center coordinates (1, 4). Apply the translation with distance 5
towards X axis and 1 towards Y axis. Obtain the new coordinates of C without changing its
radius.
Solution-
Given-
Xnew = Xold + Tx = 1 + 5 = 6
Ynew = Yold + Ty = 4 + 1 = 5
Alternatively,
In matrix form, the new center coordinates of C after translation may be obtained as-
Thus, New center coordinates of C = (6, 5).
Problem-02:
Given a square with coordinate points A(0, 3), B(3, 3), C(3, 0), D(0, 0). Apply the translation with
distance 1 towards X axis and 1 towards Y axis. Obtain the new coordinates of the square.
Solution-
Given-
Old coordinates of the square = A (0, 3), B(3, 3), C(3, 0), D(0, 0)
Translation vector = (Tx, Ty) = (1, 1)
Xnew = Xold + Tx = 0 + 1 = 1
Ynew = Yold + Ty = 3 + 1 = 4
Xnew = Xold + Tx = 3 + 1 = 4
Ynew = Yold + Ty = 3 + 1 = 4
Xnew = Xold + Tx = 3 + 1 = 4
Ynew = Yold + Ty = 0 + 1 = 1
Xnew = Xold + Tx = 0 + 1 = 1
Ynew = Yold + Ty = 0 + 1 = 1
Thus, New coordinates of the square = A (1, 4), B(4, 4), C(4, 1), D(1, 1).