Transformation:
Transformations are a fundamental part of the computer graphics. Transformations are the movement of the object in Cartesian plane.
Types of transformation
Why we use transformation
3D Transformation
3D Translation
3D Rotation
3D Scaling
3D Reflection
3D Shearing
3. OBJECTIVE
To understand basic
conventions for
object
transformations in 3D
To understand
basic
transformations
in 3D including
Translation,
Rotation, Scaling
To understand
other
transformations
like Reflection,
Shear
4. Transformations are a fundamental part
of the computer graphics. Transformations
are the movement of the object in
Cartesian plane .
Transformation
5. • Transformation are used to position objects , to
shape object , to change viewing positions , and
even how something is viewed.
• In simple words transformation is used for
1) Modeling
2) viewing
Why we use transformation
6. Three Dimensional Transformations
When the transformation takes place on a 3D
plane , it is called 3D transformation.
Methods for object modeling transformation in
three dimensions are extended from two
dimensional methods by including consideration
for the z coordinate.
7. Three Dimensional Modeling
Transformations
• Generalize from 2D by including z
coordinate
• Straightforward for translation and scale,
rotation more difficult
• Homogeneous coordinates: 4 components
• Transformation matrices: 4×4 elements
9. 3D Point
• We will consider points as column vectors.
Thus, a typical point with coordinates (x, y, z)
is represented as:
z
y
x
10. 3D Point Homogenous Coordinate
• We don't lose anything
• The main advantage: it is easier to
compose translation and rotation
• Everything is matrix multiplication
1
z
y
x
12. 3D Transformation
In homogeneous coordinates, 3D
transformations are represented by 4×4
matrixes:
1000
z
y
x
tihg
tfed
tcba
14. 3D translation
• An object is translated in 3D dimensional by
transforming each of the defining points of the
objects.
• Moving of object is called translation.
• In 3 dimensional homogeneous coordinate
representation , a point is transformed from position
P = ( x, y , z) to P’=( x’, y’, z’)
• This can be written as:-
Using P’ = T . P
11000
100
010
001
1
z
y
x
t
t
t
z
y
x
z
y
x
15. 3D translation
• The matrix representation is equivalent to the three equation.
x’=x+ tx , y’=y+ ty , z’=z+ tz
Where parameter tx , ty , tz are specifying translation distance for the
coordinate direction x , y , z are assigned any real value.
• Translate an object
by translating each
vertex in the object.
17. 3D Rotation
In general, rotations are specified by
a rotation axis and an angle. In two-
dimensions there is only one choice
of a rotation axis that leaves points
in the plane.
18. 3D Rotation
The easiest rotation axes are those that parallel to the
coordinate axis.
Positive rotation angles produce counterclockwise
rotations about a coordinate axix, if we are looking
along the positive half of the axis toward the
coordinate origin.
fig: 3D rotation
19. Coordinate Axis Rotations
Obtain rotations around other axes through cyclic
permutation of coordinate parameters:
xzyx
Fig:Coordinate Axis Rotations
20. Coordinate Axis Rotations
Z-axis rotation: For z axis same as 2D rotation:
x’=x*cos θ-y*sin θ
Y’=x*sin θ +y*cos θ
Z’=z
11000
0100
00cossin
00sincos
1
'
'
'
z
y
x
z
y
x
PRP )(z
Fig : Z-axis rotation
24. 3D Scaling
You can change the size of an object using
scaling transformation . In the scaling process ,
you either expand or compress the dimensions
of the object . Scaling can be achieved by
multiplying the original coordinates of the
object with scaling factor to get the desired
result.
25. 3D Scaling
About origin: Changes the size
of the object and repositions the
object relative to the coordinate
origin.
where Sx = scale factor in the x
direction, Sy = scale factor in the y
direction, and Sz = scale factor in
the z direction.
Fig: Scaling
11000
000
000
000
1
z
y
x
s
s
s
z
y
x
z
y
x
PSP
26. 3D Scaling
About any fixed point:
Scaling with respect to an arbitrary fixed point is not as
simple as scaling with respect to the origin .
The procedure of scaling with respect to an arbitrary fixed
point is:
Translate the object so that the fixed point coincides
with the origin.
Scale the object with respect to the origin.
Use the inverse translation of step 1 to return the
objects to its original position.
27. 3D Scaling
About any fixed point:
fig : fixed point scaling
1000
)1(00
)1(00
)1(00
),,(),,(),,(
fzz
fyy
fxx
fffzyxfff
zss
yss
xss
zyxssszyx TST
The corresponding composite
transformation matrix is:
28. 3d scaling
• The equations for scaling :
x’ = x . sx
Ssx,sy,sz y’ = y . sy
z’ = z . sz
fig name: After scaling
31. 3D reflection
• Reflection in computer graphics is
used to emulate reflective objects
like mirrors and shiny surfaces.
• Reflection may be an x-axis
y-axis , z-axis. and also in
the planes xy-plane,yz-plane , and
zx-plane.
• Reflection relative to a given
Axis are equivalent to 180
Degree rotations . Fig: reflection
32. 3d reflection
Reflection about x-axis:-
x’=x y’=-y z’=-z
1 0 0 0
0 -1 0 0
0 0 -1 0
0 0 0 1
Reflection about y-axis:-
y’=y x’=-x z’=-z
Fig: X axis reflection
Fig:Y axis reflection
33. 3D reflection
• The matrix for reflection about y-axis:-
-1 0 0 0
0 1 0 0
0 0 -1 0
0 0 0 1
• Reflection about z-axis:-
x’=-x y’=-y z’=z -1 0 0 0
0 -1 0 0
0 0 1 0
0 0 0 1
Fig: Z axis reflection
35. 3D Shearing
A transformation that distorts the
shape of an object such that the transformed
shape appears as if the object were composed
of internal layers that had been caused to slide
over each other is called a shearing.
36. 3D Shearing
• In two dimensions, transformations relative to
the x or y axes to produce distortions in the
shapes of objects. In three dimensions, we can
also generate shears relative to the z axis.
fig: before shearing fig: after shearing
37. 3D Shearing
Modify object shapes
Useful for perspective projections:
E.g. draw a cube (3D) on a screen (2D)
Alter the values for x and y by an amount
proportional to the distance from zref
38. SHEARING ABOUT XY AXIS
• Parameters a and b can be assigned
any real values. The effect of this
transformation matrix is to alter x-
and y-coordinate values by an
amount that is proportional to the z
value, while leaving the z coordinate
unchanged.
• Boundaries of planes that are
perpendicular to the z axis are thus
shifted by an amount proportional to
z. An example of the effect of this
shearing matrix on a unit cube is
shown in Fig., for shearing values
a=b=1. Shearing matrices for the x
axis and y axis are defined similarly.
39. In space, we divide shear transformation according to the
direction of the surfaces xy,xz and yz. Values of Sx,Sy and Sz
determine shear transformation sizes for all the directions.
A shear transformation about the xy plane :
| 1 0 0 0 |
Axy = | 0 1 0 0 |
| Sx Sy 0 0|
| 0 0 0 1 |
A shear matrix about the xz plane :
| 1 0 0 0 |
Axz = | Sx 1 Sz 0|
| 0 1 1 0 |
| 0 0 0 1 |
A shear matrix about the yz plane :
| 1 Sy Sz 0 |
| 0 1 0 0 |
Ayz = | 0 0 1 0 |
| 0 0 0 1 |