Lecture 6

Download as pdf or txt
Download as pdf or txt
You are on page 1of 17

Lecture 6

Two Dimensional Geometric Transformations

In Computer graphics, Transformation is a process of modifying and re-


positioning the existing graphics.

 2D Transformations take place in a two-dimensional plane.


 Transformations help change the position, size, orientation, shape, etc of the object.

Transformation Techniques - (Geometric transformation functions)


In computer graphics, various transformation techniques are-

2D Translation in Computer Graphics-

In computer graphics, 2D Translation is a process of moving an object from one position to another
in a two-dimensional plane.
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 = (X new, Ynew)
 Translation vector or Shift vector = (Tx, Ty)
Given a Translation vector (Tx, Ty)-
 Tx defines the distance the Xold coordinate has to be moved.
 Ty defines the distance the Yold coordinate has to be moved.

This translation is achieved by adding the translation coordinates to the old coordinates of
the object as-
 Xnew = Xold + Tx (This denotes translation towards X axis)
 Ynew = Yold + Ty (This denotes translation towards Y axis)

In Matrix form, the above translation equations may be represented as-


 The homogeneous coordinates representation of (X, Y) is (X, Y, 1).
 Through this representation, all the transformations can be performed using
matrix/vector multiplications.

The above translation matrix may be represented as a 3 x 3 matrix as-

PRACTICE PROBLEMS BASED ON 2D TRANSLATION IN COMPUTER GRAPHICS-


Problem-01:
10 20 20 15 15 25 25 17 10 10
10 10 25 25 10 10 30 50 30 10
1 1 1 1 1 1 1 1 1 1
3*10
tx 3
ty 7

1 0 3
0 1 7
0 0 1

13 23 23 18 18 28 28 20 13 13
17 17 32 32 17 17 37 57 37 17
1 1 1 1 1 1 1 1 1 1
60

50

40

30

20

10

0
-60 -50 -40 -30 -20 -10 0 10 20 30

Problem-02:
Given a circle C with radius 10 and center coordinates (1, 4). Apply the translation with a
distance of 5 towards the X-axis and 1 towards Y Y-axis. Obtain the new coordinates of C
without changing its radius.

Solution-

Given-
 Old center coordinates of C = (Xold, Yold) = (1, 4)
 Translation vector = (Tx, Ty) = (5, 1)

Let the new center coordinates of C = (Xnew, Ynew).

Applying the translation equations, we have-


 Xnew = Xold + Tx = 1 + 5 = 6
 Ynew = Yold + Ty = 4 + 1 = 5

Thus, the New center coordinates of C = (6, 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).

2D Rotation in Computer Graphics-


In Computer graphics,
2D Rotation is a process of rotating an object with respect to an angle in a two dimensional plane.
Consider a point object O has to be rotated from one angle to another in a 2D
 Initial coordinates of the object O = (Xold, Yold)
 Initial angle of the object O with respect to origin = Φ
 Rotation angle = θ
 New coordinates of the object O after rotation = (X new, Ynew)

This rotation is achieved by using the following rotation equations-

Xnew = Xold * cosθ – Yold * sinθ


Ynew = Xold * sinθ + Yold * cosθ
In Matrix form, the above rotation equations may be represented as-
For homogeneous coordinates, the above rotation matrix may be represented as a 3 x 3
matrix as-

PRACTICE PROBLEMS BASED ON 2D ROTATION IN COMPUTER


GRAPHICS-

Problem-01:
Given a line segment with starting point as (0, 0) and ending point as (4, 4). Apply a 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-
 Old ending coordinates of the line = (Xold, Yold) = (4, 4)
 Rotation angle = θ = 30º

Let new ending coordinates of the line after rotation = (Xnew, Ynew).

Applying the rotation equations, we have-

Xnew
= Xold x cosθ – Yold x sinθ
= 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

= Xold x sinθ + Yold x cosθ


= 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-
Problem-02: review Excel sheet for training

2D Scaling in Computer Graphics-


In computer graphics, scaling is a process of modifying or altering the size of objects.

 Scaling may be used to increase or reduce the size of the object.


 Scaling subjects the coordinate points of the original object to change.
 The scaling factor determines whether the object size is to be increased or reduced.
 If the scaling factor > 1, then the object size is increased.
 If the scaling factor < 1, then the object size is reduced.

Consider a point object O has to be scaled in a 2D plane.


Let-
 Initial coordinates of the object O = (Xold, Yold)
 Scaling factor for X-axis = Sx
 Scaling factor for Y-axis = Sy
 New coordinates of the object O after scaling = (X new, Ynew)

This scaling is achieved by using the following scaling equations-


 Xnew = Xold x Sx
 Ynew = Yold x Sy
In Matrix form, the above scaling equations may be represented as-

For homogeneous coordinates, the above scaling matrix may be represented as a 3 x 3


matrix as-

PRACTICE PROBLEMS BASED ON 2D SCALING IN COMPUTER GRAPHICS-


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

For Coordinates A(0, 3)

Let the new coordinates of corner A after scaling = (Xnew, Ynew).


Applying the scaling equations, we have-
 Xnew = Xold x Sx = 0 x 2 = 0
 Ynew = Yold x Sy = 3 x 3 = 9

Thus, New coordinates of corner A after scaling = (0, 9).

For Coordinates B(3, 3)

Let the new coordinates of corner B after scaling = (Xnew, Ynew).


Applying the scaling equations, we have-
 Xnew = Xold x Sx = 3 x 2 = 6
 Ynew = Yold x Sy = 3 x 3 = 9

Thus, New coordinates of corner B after scaling = (6, 9).

For Coordinates C(3, 0)


Let the new coordinates of corner C after scaling = (Xnew, Ynew).

Applying the scaling equations, we have-


 Xnew = Xold x Sx = 3 x 2 = 6
 Ynew = Yold x Sy = 0 x 3 = 0

Thus, New coordinates of corner C after scaling = (6, 0).

For Coordinates D(0, 0)

Let the new coordinates of corner D after scaling = (Xnew, Ynew).

Applying the scaling equations, we have-


 Xnew = Xold x Sx = 0 x 2 = 0
 Ynew = Yold x Sy = 0 x 3 = 0

Thus, New coordinates of corner D after scaling = (0, 0).

Thus, New coordinates of the square after scaling = A (0, 9), B(6, 9), C(6, 0), D(0, 0).
2D Reflection in Computer Graphics-

 Reflection is a kind of rotation where the angle of rotation is 180 degree.


 The reflected object is always formed on the other side of mirror.
 The size of reflected object is same as the size of original object.

Consider a point object O has to be reflected in a 2D plane.


 Initial coordinates of the object O = (Xold, Yold)
 New coordinates of the reflected object O after reflection = (Xnew, Ynew)

Reflection On X-Axis:

This reflection is achieved by using the following reflection equations-


 Xnew = Xold
 Ynew = -Yold
In Matrix form, the above reflection equations may be represented as-

For homogeneous coordinates, the above reflection matrix may be represented as a 3 x 3


matrix as-
Reflection On Y-Axis:

This reflection is achieved by using the following reflection equations-


 Xnew = -Xold
 Ynew = Yold

In Matrix form, the above reflection equations may be represented as-

For homogeneous coordinates, the above reflection matrix may be represented as a 3 x 3


matrix as-
PRACTICE PROBLEMS BASED ON 2D REFLECTION IN COMPUTER GRAPHICS-

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

For Coordinates A(3, 4)

Let the new coordinates of corner A after reflection = (Xnew, Ynew).

Applying the reflection equations, we have-


 Xnew = Xold = 3
 Ynew = -Yold = -4
Thus, New coordinates of corner A after reflection = (3, -4).

For Coordinates B(6, 4)

Let the new coordinates of corner B after reflection = (Xnew, Ynew).

Applying the reflection equations, we have-


 Xnew = Xold = 6
 Ynew = -Yold = -4

Thus, New coordinates of corner B after reflection = (6, -4).

For Coordinates C(5, 6)

Let the new coordinates of corner C after reflection = (Xnew, Ynew).

Applying the reflection equations, we have-


 Xnew = Xold = 5
 Ynew = -Yold = -6

Thus, New coordinates of corner C after reflection = (5, -6).


Thus, New coordinates of the triangle after reflection = A (3, -4), B(6, -4),

You might also like