Vous êtes sur la page 1sur 91

Transformation of points and line

2-D rotation, translation


Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Lec4 - Geometric Transformations

ME308 Computer Aided Design & Analysis

Arun Shal U B
Department of Mechanical Engineering
Govt. Engineering College Kozhikode

March 3, 2020

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Outline

Transformation of points and line

2-D rotation, translation

Homogeneous coordinates

Scaling and combined transformation

Transformations in Three-Dimensions

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Geometric Transformations

I Transformation is the backbone of computer graphics


I It enable us to maneuver an object, view it from different
angles, create multiple copies, create its reflected image,
re-shape or scale an object, position an object with respect
to the other, and much more.
I Transformations may be employed to perform rigid-body
motion wherein an object may be moved from one position to
another without altering its shape and size.
I Typical rigid body transformations involve translation,
rotation and reflection, the latter being a combination of the
first two.

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Geometric Transformations

I Transformations may also cause deformations like shear,


scaling and morphing wherein the object is altered in size
and/or shape.
I For special effects, free-form deformation may be used
where a geometric model is embedded inside a grid of
control points, and transformations are applied to these
control points to distort the object in a desired manner.

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Geometric Transformations

Figure: Use of transformation to view an object from different angles

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Geometric Transformations - Coordinate frame

I An object may be treated as an assemblage of finitely many


points arranged in a non-arbitrary manner in space.
I The origin and coordinate axes may or may not be a part of
the object.
I If the coordinate frame is attached to the object, it is called
the local frame of reference.
I For coordinate frame not a part of the object, it is called
global frame.
I Usually user prefers a fixed global coordinate frame for all
objects and one local coordinate system for each object.

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Geometric Transformations - Definition

Figure: Nature of geometric transformation as a function map

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Geometric Transformations - Definition

I A geometric transformation may be considered as a mapping


function between a set of points both in the domain and
range.
I The function needs to be one-to-one in that any and all
points in the domain (initial location) should have the
corresponding images in the range (final location).
I Thus, if T (P1 ) and T (P2 ) represent the final locations of
points P1 and P2 belonging to the object where T is a
transformation function, then,
I If P1 6= P2 , T (P1 ) 6= T (P2 )

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Geometric Transformations - Definition

I In addition, the transformation should be onto in that for


every final location T (P), there must exist its pre-image P
corresponding to the initial position of the object.
I Any point in the newly located object must be associated with
only one point belonging to the object in its original location.
I Thus, a one-to-one and onto map makes it possible to
perform inverse transformation, that is, to move the object
from its final to original location.

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Rigid Body Transformations

I In rigid body transformations, the geometric model stays


undeformed, that is, the points constituting the model
maintain the same relative positions with respect to each
other.
I A solid model may be conceived to consist of points, curves
and surfaces which should not get distorted under a rigid-body
trans-formation.
I Rotation and translation are two transformations that can
be grouped under this category.

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

2-D Rotation
Consider a rigid body S packed with points Pi (i = 1, . . . , n) and let
a point Pj (xj , yj ) on S be rotated about the z-axis to Pj∗ (xj∗ , yj∗ ) by
an angle θ .

Figure: Rotation in a plane

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

2-D Rotation
Consider a rigid body S packed with points Pi (i = 1, . . . , n) and let
a point Pj (xj , yj ) on S be rotated about the z-axis to Pj∗ (xj∗ , yj∗ ) by
an angle θ .

xj∗ = l cos(θ + α)
= l cos θ cos α − l sin θ sin α

xj∗ = xj cos θ − yj sin θ

Figure: Rotation in a plane

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

2-D Rotation
Consider a rigid body S packed with points Pi (i = 1, . . . , n) and let
a point Pj (xj , yj ) on S be rotated about the z-axis to Pj∗ (xj∗ , yj∗ ) by
an angle θ .

yj∗ = l sin(θ + α)
= l sin θ cos α + l cos θ sin α

yj∗ = xj sin θ + yj cos θ

Figure: Rotation in a plane

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

2-D Rotation
Consider a rigid body S packed with points Pi (i = 1, . . . , n) and let
a point Pj (xj , yj ) on S be rotated about the z-axis to Pj∗ (xj∗ , yj∗ ) by
an angle θ .

xj∗ = xj cos θ − yj sin θ


yj∗ = xj sin θ + yj cos θ
In Matrix form,
 ∗   
xj cos θ − sin θ xj
=
yj∗ sin θ cos θ yj

Pj∗ = RPj
Figure: Rotation in a plane

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

2-D Rotation
I
Pj∗ = RPj
I Where,  
cos θ − sin θ
R=
sin θ cos θ
is the two-dimensional rotation matrix.
I Rotation matrix R is orthogonal

R T R = RR T = I =⇒ R T = R −1
I For S to be rotated by an angle θ ,transformation must be
performed simultaneously for all points Pi (i = 1, . . . , n) such
that the entire rigid body reaches the new destination S * .
ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations
Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

2-D Rotation - Example

I A trapezoidal lamina ABCD lies in the x-y plane with A(6, 1),
B(8, 1), C(10, 4) and D(3, 4). The lamina is to be rotated
about the z-axis by 900 . Determine the new position
A∗ B ∗ C ∗ D ∗ after rotation.

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

2-D Rotation - Example

 ∗ T  T
 A   A
 ∗
   
 
B cos θ − sin θ B

=

 C ∗ sin θ cos θ  C
 ∗ 
 
D D
 
  
cos 90 − sin 90 6 8 10 3
=
sin 90 cos 90 1 1 4 4

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

2-D Rotation - Example

 ∗ T  T
 A   A
 ∗
   
 
B cos θ − sin θ B

=

 C ∗ sin θ cos θ  C
 ∗ 
 
D D
 
  
cos 90 − sin 90 6 8 10 3
=
sin 90 cos 90 1 1 4 4
    
0 −1 6 8 10 3 −1 −1 −4 −4
= =
1 0 1 1 4 4 6 8 10 3

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

2-D Rotation - Example

Click here for Visualization


ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations
Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Translation in Two-Dimensions

I For a rigid body S to be translated along a vector v such that


each point of S shifts by (p, q),

xj∗ = xj + p, yj∗ = yj + q

xj∗
     
x p
= j + =⇒ Pj∗ = Pj + v
yj∗ yj q

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Translation in Two-Dimensions - Example

I For a planar lamina ABCD with A(3, 5), B(2, 2),C (8, 2) and
D(4, 5) in x-y plane and P(4, 3) a pointin the interior, the
8
lamina is to be translated through v =
5

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Translation in Two-Dimensions - Example

I For a planar lamina ABCD with A(3, 5), B(2, 2),C (8, 2) and
D(4, 5) in x-y plane and P(4, 3) a pointin the interior, the
8
lamina is to be translated through v =
5
 ∗ T  T  T  T
 A  3 5 8 5 11 10
∗
       
B 2 2 8 5 10 7 

  
  
  
 
    
C ∗ = 8 2 + 8 5 = 16 7

D ∗ 
4 5
 
8 5
 
12 10


 
 
 
 
 
 
 

P∗ 4 3 8 5 12 8
       

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Homogeneous coordinates

I Translation as described earlier is a matrix addition


operation while rotation is matrix multiplication.
I Homogeneous coordinates are introduced to represent
translation also by matrix multiplication so as to unify rigid
body transformation procedures.

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Homogeneous coordinates

I Translation as described earlier is a matrix addition


operation while rotation is matrix multiplication.
I Homogeneous coordinates are introduced to represent
translation also by matrix multiplication so as to unify rigid
body transformation procedures.
 ∗     
xj  1 0 p xj  xj + p 
y ∗ = 0 1 q  yj = yj + q
 j
1 0 0 1 1 1
   

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Homogeneous coordinates

 ∗     
xj  1 0 p xj  xj + p 
y ∗ = 0 1 q  yj = yj + q
 j
1 0 0 1 1 1
   

I The definition of position vector Pj is altered from an ordered


 
xj
pair in the two-dimensional space to an ordered triplet
y
  j
xj 
y which are termed as the homogeneous coordinates of
 j
1
Pj .

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Homogeneous coordinates
I Translation in terms of homogeneous coordinates can be
expressed as
Pj∗ = TPj
where,  
1 0 p
T = 0 1 q 
0 0 1
I The rotation relation can be modified as well to express the
result in terms of the homogeneous coordinates,
 ∗   
xj  cos θ − sin θ 0 xj 
Pj∗ = RPj =⇒ yj∗ =  sin θ cos θ 0 yj
1 0 0 1 1
   

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Combined Rotation and Translation

I Consider a point P(x, y , 1) in the x-y plane to be rotated by


an angle θ about the z-axis to a position P1 (x1 , y1 , 1) followed
by a translation by v (p, q) to a positionP2 (x2 , y2 , 1).
    
x1  cos θ − sin θ 0 x 
P1 = RP, y1 =  sin θ cos θ 0 y
1 0 0 1 1
   

    
x2  1 0 p x1 
P2 = TP1 , y2 = 0 1 q  y1
1 0 0 1 1
   

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Combined Rotation and Translation

I P2 = TRP
     
x2  1 0 p cos θ − sin θ 0 x 
y2 = 0 1 q   sin θ cos θ 0 y
1 0 0 1 0 0 1 1
   

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Combined Rotation and Translation

I P2 = TRP
     
x2  1 0 p cos θ − sin θ 0 x 
y2 = 0 1 q   sin θ cos θ 0 y
1 0 0 1 0 0 1 1
   

    
x2  cos θ − sin θ p x 
y2 =  sin θ cos θ q  y
1 0 0 1 1
   

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Combined Rotation and Translation

I On the contrary, if translation by v is followed by rotation


about the z-axis by an angle θ to reach P2∗ , then P2∗ = RTP
 ∗    
x2  cos θ − sin θ 0 1 0 p x 
y ∗ =  sin θ cos θ 0 0 1 q  y
 2
1 0 0 1 0 0 1 1
 

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Combined Rotation and Translation

I On the contrary, if translation by v is followed by rotation


about the z-axis by an angle θ to reach P2∗ , then P2∗ = RTP
 ∗    
x2  cos θ − sin θ 0 1 0 p x 
y ∗ =  sin θ cos θ 0 0 1 q  y
 2
1 0 0 1 0 0 1 1
 

    
x2  cos θ − sin θ p cos θ − q sin θ x 
y2 =  sin θ cos θ p sin θ + q cos θ y
1 0 0 1 1
   

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Combined Rotation and Translation

I From above we can arrive at two important conclusions:


I the homogeneous coordinate system helps to unify translation
and rotation as multiplicative transformations
I Transformations are not commutative.
I The sequence in which the transformations are performed is
significant and must be maintained while concatenating the
respective matrices.
I Otherwise a different orientation or position of the object is
reached.

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Combined Rotation and Translation - Example

Lamina ABCD with an inner point P with coordinates (4, 3), (3,
1), (8, 1), (7, 4) and (5, 2) respectively is first rotated through 600
and then translated by (5, 4). In another sequence, the trapezoid is
first translated by (5, 4) and then rotated through 600 . Find the
positions and orientations of the lamina for the two sequence of
transformations.

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Combined Rotation and Translation - Example

Coordinate points of thelamina ABCD 


  4 3 8 7 5
A B C D P = 3 1 1 4 4
1 1 1 1 1
Rotation
 matrix.   
cos 60 − sin 60 0 0.50000 −0.86603 0.00000
R =  sin 60 cos 60 0 = 0.86603 0.50000 0.00000
0 0 1 0.00000 0.00000 1.00000
 
1 0 5
Translation matrix. T = 0 1 4
0 0 1

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Combined Rotation and Translation - Example

Case - 1 :  
5
Rotation through 600 followed by translation through
4
 ∗
A B ∗ C ∗ D ∗ P ∗ = TR A B C
  
D P
   
1 0 5 0.50000 −0.86603 0.00000 4 3 8 7 5
= 0 1 4 0.86603 0.50000 0.00000 3 1 1 4 4
0 0 1 0.00000 0.00000 1.00000 1 1 1 1 1

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Combined Rotation and Translation - Example

Case - 1 :  
5
Rotation through 600 followed by translation through
4
 ∗
A B ∗ C ∗ D ∗ P ∗ = TR A B C
  
D P
   
1 0 5 0.50000 −0.86603 0.00000 4 3 8 7 5
= 0 1
 4  0.86603 0.50000 0.00000 3 1 1 4 4
0 0 1 0.00000 0.00000 1.00000 1 1 1 1 1
  
1 0 5 −0.5981 0.6340 3.1340 0.0359 0.7679
= 0 1 4  4.9641 3.0981 7.4282 8.0622 5.3301
0 0 1 1.0000 1.0000 1.0000 1.0000 1.0000

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Combined Rotation and Translation - Example

Case - 1 :  
5
Rotation through 600 followed by translation through
4
 ∗
A B ∗ C ∗ D ∗ P ∗ = TR A B C
  
D P
   
1 0 5 0.50000 −0.86603 0.00000 4 3 8 7 5
= 0 1 4
  0.86603 0.50000 0.00000 3 1 1 4 4
0 0 1 0.00000 0.00000 1.00000 1 1 1 1 1
 
4.40 5.63 8.13 5.04 5.77
= 8.96 7.10 11.43
 12.06 9.33
1.00 1.00 1.00 1.00 1.00

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Combined Rotation and Translation - Example

Case - 2 :  
5
Translation through followed by rotation through 600
4
 0
A B 0 C 0 D 0 P 0 = RT A B C
  
D P
   
0.50000 −0.86603 0.00000 1 0 5 4 3 8 7 5
= 0.86603 0.50000 0.00000 0 1 4 3 1 1 4 4
0.00000 0.00000 1.00000 0 0 1 1 1 1 1 1

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Combined Rotation and Translation - Example

Case - 2 :  
5
Translation through followed by rotation through 600
4
 0
A B 0 C 0 D 0 P 0 = RT A B C
  
D P
   
0.50000 −0.86603 0.00000 1 0 5 4 3 8 7 5
= 0.86603 0.50000 0.00000
  0 1 4 3 1 1 4 4
0.00000 0.00000 1.00000 0 0 1 1 1 1 1 1
  
0.500 −0.866 0.000 9 8 13 12 10
= 0.866 0.500 0.000 7 5 5 8 6
0.000 0.000 1.000 1 1 1 1 1

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Combined Rotation and Translation - Example

Case - 2 :  
5
Translation through followed by rotation through 600
4
 0
A B 0 C 0 D 0 P 0 = RT A B C
  
D P
   
0.50000 −0.86603 0.00000 1 0 5 4 3 8 7 5
= 0.86603 0.50000 0.00000
  0 1 4 3 1 1 4 4
0.00000 0.00000 1.00000 0 0 1 1 1 1 1 1
 
−1.562 −0.330 2.170 −0.928 −0.196
= 11.294 9.428 13.758
 14.392 11.660 
1.000 1.000 1.000 1.000 1.000

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Combined Rotation and Translation - Example

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Concatenated Transformations

I In practice a series of transformations may be applied to


geometric models and thus, combining or concatenating
transformations is necessary.
I Concatenated transformations are simply obtained by
multiplying the matrices of the corresponding individual
transformations.
I If we apply n transformations to a point starting with
transformation 1, with [T1 ], and ending with
transformation n, with [Tn ], the concatenated transformation
of the point is given by:

P ∗ = [Tn ][Tn−1 ] . . . [T2 ][T1 ]P

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Rotation about an arbitrary point


I What happens when you apply a rotation transformation to an
object that is not at the origin?
I Solution:
I Translate the center of rotation to the origin
I Rotate the object
I Translate back to the original location

Figure: Rotation about an arbitrary point

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Rotation of a Point Q(x,y,1) about a Point P(p,q,1)

Figure: Steps to rotate point Q about point P

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Rotation of a Point Q(x,y,1) about a Point P(p,q,1)

Transformed coordinates of Q(x, y , 1) can be obtained as


 ∗     
x  1 0 p cos θ − sin θ 0 1 0 −p x 
y ∗ = 0 1 q   sin θ cos θ 0 0 1 −q  y
1 0 0 1 0 0 1 0 0 1 1
   

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Rotation about an arbitrary point- Example

Consider the square A(1,0) B(0,0) C(0,1) D(1,1). Rotate the


square ABCD by 45 degree counterclockwise about A(1,0). Apply
rotation about arbitrary point to solve this question.

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Rotation about an arbitrary point- Example

Translation
 Matrix to translate Point-A of the square to origin,
1 0 −1
T1 = 0 1 0 
0 0 1
Rotation
 Matrix   
cos 45 − sin 45 0 0.707 −0.707 0.000
R =  sin 45 cos 45 0 = 0.707 0.707 0.000
0 0 1 0.000 0.000 1.000
Translation
 Matrix
 to translate Point-A back to (1,0),
1 0 1
T2 = 0 1 0
0 0 1

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Rotation about an arbitrary point- Example

coordinate points of lamina ABCD


 
 1 0 0 1

A B C D = 0 0 1 1
1 1 1 1

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Rotation about an arbitrary point- Example

coordinate points of lamina ABCD


 
 1 0 0 1

A B C D = 0 0 1 1
1 1 1 1
 ∗
A B ∗ C ∗ D ∗ = T2 RT1 A B C
  
D

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Rotation about an arbitrary point- Example

coordinate points of lamina ABCD


 
 1 0 0 1

A B C D = 0 0 1 1
1 1 1 1
 ∗
A B ∗ C ∗ D ∗ = T2 RT1 A B C
  
D

   
1 0 1 0.707 −0.707 0.000 1 0 −1
= 0 1 0 0.707 0.707 0.000 0 1 0 
0 0 1 0.000 0.000 1.000 0 0 1

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Rotation about an arbitrary point- Example

coordinate points of lamina ABCD


 
 1 0 0 1

A B C D = 0 0 1 1
1 1 1 1
 ∗
A B ∗ C ∗ D ∗ = T2 RT1 A
  
B C D
 
1.000 0.293 −0.414 0.293
= 0.000 −0.707 0.000 0.707
1.000 1.000 1.000 1.000

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Rotation about an arbitrary point- Example

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Reflection

I In 2-D, reflection of an object can be obtained by rotating it


through 1800 about the axis of reflection.
I If an object S in the x-y plane is to be reflected about the
x-axis (y = 0), reflection of a point (x, y , 1) in S is given by
(x ∗ , y ∗ , 1), such that

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Reflection

I In 2-D, reflection of an object can be obtained by rotating it


through 1800 about the axis of reflection.
I If an object S in the x-y plane is to be reflected about the
x-axis (y = 0), reflection of a point (x, y , 1) in S is given by
(x ∗ , y ∗ , 1), such that
 ∗       
x   x  1 0 0 x  x 
y ∗ = −y = 0 −1 0 y = Rfx y
1 1 0 0 1 1 1
       

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Reflection

I Similarly, reflection about the y-axis is described as


 ∗       
x  −x  −1 0 0 x  x 
y∗ = y =  0 1 0 y = Rfy y
1 1 0 0 1 1 1
       

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Reflection

I Consider a triangle ABC with A = (6, 1, 1), B = (8, 1, 1) and


C = (10, 4, 1). The entity is to be reflected through the
y-axis.Find the coordinates of reflected triangle.

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Reflection

I Consider a triangle ABC with A = (6, 1, 1), B = (8, 1, 1) and


C = (10, 4, 1). The entity is to be reflected through the
y-axis.Find the coordinates of reflected triangle.
 ∗
A B ∗ C ∗ = Rfy A B C
  

    
−1 0 0 6 8 10 −6 −8 −10
=  0 1 0 1 1 4  =  1 1 4 
0 0 1 1 1 1 1 1 1

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Reflection through a point

I A point P(x, y , 1) when reflected through the origin is written


as P ∗ (x ∗ , y ∗ , 1) = (−x, −y , 1)
 ∗       
x  −x  −1 0 0 x  x 
y ∗ = −y =  0 −1 0 y = Rfo y
1 1 0 0 1 1 1
       

I For reflection of an object about a point Pr , we would require


to shift Pr to the origin, perform the above reflection and then
transform Pr back to its original position.

P ∗ = Tor Rfo Tro P

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Reflection About an Arbitrary Line

I Let D be a point on line L


and S be an object in
two-dimensional space.
I It is required to reflect S
about L.
I This reflection can be
obtained as a sequence of
transformations

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Reflection About an Arbitrary Line

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Reflection About an Arbitrary Line

1. Translate point D(p, q, 1) to coincide with the origin O,


shifting the line L parallel to itself to a translated position L∗
using TDO
2. Rotate L∗ by an angle θ such that it coincides with the y-axis
(new position of the line is L∗∗ , say) using R(θ)
3. Reflect S about the y-axis using Rfy
4. Rotate L∗∗ through −θ to bring it back to L∗ using R(−θ)
5. Translate L∗ to coincide with its original position L using TOD .
S ∗ = TOD R(−θ)Rfy R(θ)TDO S

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Reflection About an Arbitrary Line

S ∗ = TOD R(−θ)Rfy R(θ)TDO S

  
1 0 p cos θ sin θ 0
TOD R(−θ)Rfy R(θ)TDO = 0 1
 q  − sin θ cos θ 0 ×
0 0 1 0 0 1
   
−1 0 0 cos θ − sin θ 0 1 0 −p
 0 1 0  sin θ cos θ 0 0 1 −q 
0 0 1 0 0 1 0 0 1

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Reflection About an Arbitrary Line

Find the coordinates of a reflected triangle having vertices (2,4),


(4,3) and (3,7) about an arbitrary line represented by y = 2x + 2.
Plot the transformed triangle.

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Reflection About an Arbitrary Line

Find the coordinates of a reflected triangle having vertices (2,4),


(4,3) and (3,7) about an arbitrary line represented by y = 2x + 2.
Plot the transformed triangle.
Solution:
Vertices of the triangle can be represented as
 
  2 4 3
A B C = 4 3 7
1 1 1

From the equation y = 2x + 2, slope of the line is


tan−1 2 = 63.4350 and (0,2) is a point on the line

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Reflection About an Arbitrary Line


For the line to align with y-axis, it is to be rotated by 26.5650
(90 − 63.435) counterclockwise
Vertices of the transformed triangle:
A B ∗ C ∗ = T0,2 R(−26.560 )Rfy R(26.560 )T0,−2 A B C
 ∗   

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Reflection About an Arbitrary Line


For the line to align with y-axis, it is to be rotated by 26.5650
(90 − 63.435) counterclockwise
Vertices of the transformed triangle:
A B ∗ C ∗ = T0,2 R(−26.560 )Rfy R(26.560 )T0,−2 A B C
 ∗   

   
1 0 0 cos 25.56 sin 26.56 0 −1 0 0
= 0 1 2 − sin 26.56 cos 26.56 0  0 1 0 ×
0 0 1 0 0 1 0 0 1
   
cos 26.56 − sin 26.56 0 1 0 0 2 4 3
 sin 26.56 cos 26.56 0 0 1 −2 4 3 7
0 0 1 0 0 1 1 1 1

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Reflection About an Arbitrary Line

For the line to align with y-axis, it is to be rotated by 26.5650


(90 − 63.435) counterclockwise
Vertices of the transformed triangle:

A B ∗ C ∗ = T0,2 R(−26.560 )Rfy R(26.560 )T0,−2 A B C


 ∗   

 
0.400 −1.600 2.200
= 4.800 5.800 7.400
1.000 1.000 1.000

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Reflection About an Arbitrary Line


Find the coordinates of a reflected triangle having vertices (2,4),
(4,3) and (3,7) about an arbitrary line represented by y = 2x + 2.
Plot the transformed triangle.

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Deformations

I Deformations are transformations that would alter the size


and/or shape of the object
I Examples involve scaling and shear.

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Scaling
I A point P(x, y , 1) belonging to the object S can be scaled to a
new position vector P ∗ (x ∗ , y ∗ , 1) using factors µx and µy such
that x ∗ = µx x and y ∗ = µy y
I In matrix form
 ∗   
x  µx 0 0  x 
y ∗ =  0 µy 0 y = SP
1 0 0 1 1
   

I Where Sis the scaling matrix.


I Scale factors µx and µy are always non-zero and positive.
I In case of uniform scaling when µx = µy = µ , the model gets
changed uniformly in size and there is no distortion.
ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations
Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Scaling
I Non-uniform scaling changes the tangent vector proportionally
while the slope remains unaltered in uniform scaling for
µx = µy .

Figure: Uniform and non-uniform scaling


ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations
Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Shear
I Consider a matrix Shx which when applied to a point
P(x, y , 1) results in
 ∗     
x  1 shx 0 x  x + shx y 
y ∗ = 0 1 0 y = y = Shx P
1 0 0 1 1 1
     

I This, in effect shears the point along the x axis.


I Likewise, application of Shy on P yields
 ∗     
x  1 0 0 x   x 
y ∗ = shy 1 0 y = y + shy x = Shy P
1 0 0 1 1 1
     

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Shear
A rectangle with coordinates (3, 1), (3, 4), (8, 4) and (8, 1),
respectively, is subjected to a shear along the y direction with a
factor shy = 1.5. Find the transformed coordinates of the rectangle.

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Shear
A rectangle with coordinates (3, 1), (3, 4), (8, 4) and (8, 1),
respectively, is subjected to a shear along the y direction with a
factor shy = 1.5. Find the transformed coordinates of the rectangle.
Coordinates of the rectangle are represented as
 
  3 3 8 8
A B C D = 1 4 4 1
1 1 1 1

Coordinates after shearing


  
 ∗ 1 0 0 3 3 8 8
A B ∗ C ∗ D ∗ = 1.5 1 0 1 4 4 1


0 0 1 1 1 1 1
ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations
Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Shear
A rectangle with coordinates (3, 1), (3, 4), (8, 4) and (8, 1),
respectively, is subjected to a shear along the y direction with a
factor shy = 1.5. Find the transformed coordinates of the rectangle.
Coordinates of the rectangle are represented as
 
  3 3 8 8
A B C D = 1 4 4 1
1 1 1 1

Coordinates after shearing


 
 ∗ 3.00 3.00 8.00 8.00
A B ∗ C ∗ D ∗ = 5.50 8.50 16.00 13.00


1.00 1.00 1.00 1.00


ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations
Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Shear

Figure: Shear along the y direction


ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations
Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Combined rotation and scaling - Example

A square having coordinates (2,2), (5,2), (5,4) and (2,4) is to be


rotated about the point (2,2) in clockwise direction at an angle of
600 and after that it is scaled to 3 unit in x-direction and 2 unit in
y-direction. Find and plot the final coordinates of the geometry.

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Combined rotation and scaling - Example

A square having coordinates (2,2), (5,2), (5,4) and (2,4) is to be


rotated about the point (2,2) in clockwise direction at an angle of
600 and after that it is scaled to 3 unit in x-direction and 2 unit in
y-direction. Find and plot the final coordinates of the geometry.
Solution:
Final coordinates of the geometry can be obtained by
 
2 5 5 2
= S(3, 2)T (2, 2)R(−600 )T (−2, −2) 2 2 4 4
1 1 1 1

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Combined rotation and scaling - Example

 
2 5 5 2
= S(3, 2)T (2, 2)R(−600 )T (−2, −2) 2 2 4 4
1 1 1 1

    
3 0 0 1 0 2 0.500 0.866 0.000 1 0 −2
= 0 2 0 0 1 2 −0.866 0.500 0.000 0 1 −2 ×
0 0 1 0 0 1 0.000 0.000 1.000 0 0 1
 
2 5 5 2
2 2 4 4
1 1 1 1

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Combined rotation and scaling - Example

 
2 5 5 2
= S(3, 2)T (2, 2)R(−600 )T (−2, −2) 2 2 4 4
1 1 1 1
  
1.500 2.598 −2.196 2 5 5 2
= −1.732 1.000 5.464  2 2 4 4
0.000 0.000 1.000 1 1 1 1
 
6.000 10.500 15.696 11.196
= 4.000 −1.196 0.804 6.000 
1.000 1.000 1.000 1.000

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Combined rotation and scaling - Example

Figure: Rotation followed by scaling

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Homogeneous Transformation Matrices-Review


I Rotation:  
cos θ − sin θ 0
R(θ) =  sin θ cos θ 0
0 0 1
I Translation :  
1 0 p
T (p, q) = 0 1 q 
0 0 1
I Reflection:
     
1 0 0 −1 0 0 −1 0 0
Rfx = 0 −1 0 , Rfy =  0 1 0 , RfO =  0 −1 0
0 0 1 0 0 1 0 0 1

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Homogeneous Transformation Matrices-Review

I Scaling:
 
µx 0 0
S =0 µy 0
0 0 1
I Shearing:
 
1 shx 0
Sh = shy 1 0
0 0 1

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Translation in Three-Dimensions

I The translation matrix to move a point and thus an object, by


a vector (p, q, r ) may be written as
 
1 0 0 p
0 1 0 q 
T = 0 0 1 r 

0 0 0 1

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Rotation in Three-Dimensions

I The rotation matrix can be modified to accommodate the


three-dimensional homogenous coordinates.
I For rotation by angle θ about the z-axis (the z coordinate does
not change), we get
 
cos θ − sin θ 0 0
 sin θ cos θ 0 0
Rz =  0

0 1 0
0 0 0 1

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Rotation in Three-Dimensions

I rotation matrices about the x and y-axis for angles ψ and φ


can be written as
 
1 0 0 0
0 cos ψ − sin ψ 0
Rx = 0 sin ψ cos ψ 0

0 0 0 1
 
cos φ 0 sin φ 0
 0 1 0 0
Ry = 
− sin φ 0 cos φ 0

0 0 0 1

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Scaling in Three-Dimensions

I The scaling matrix can be extended from that in a


two-dimensional case as
 
µx 0 0 0
 0 µy 0 0
S =  0 0 µ z 0

0 0 0 1

I where µx , µy and µz are the scale factors along x, y and z


directions,

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Shear in Three-Dimensions

I The generic form of the transformation matrix in 3D shear can


be expressed as
 
1 sh12 sh13 0
sh21 1 sh23 0
Sh =  
sh31 sh32 1 0
0 0 0 1

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Reflection in Three-Dimensions

I Generic reflections about the x-y plane (z becomes –z), y-z


plane (x becomes – x), and z-x plane (y becomes –y) can be
expressed using the following respective transformations:
   
1 0 0 0 −1 0 0 0
0 1 0 0
 , Rfyz =  0 1 0 0
 
Rfxy =  0 0 −1 0  0 0 1 0
0 0 0 1 0 0 0 1
 
1 0 0 0
0 −1 0 0
Rfxz =
0 0 1 0

0 0 0 1

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations


Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Combined transformation in Three-Dimensions


I The corners of wedge-shaped block are A(0, 0, 2), B(0, 0, 3),
C(0, 2, 3), D(0, 2, 2), E(-1, 2, 2) and F(-1, 2, 3), and the
reflection plane passes through the y-axis at 450 between (-x)
and z-axis. Determine the reflection of the wedge.

Figure: Reflection of a wedge about a plane


ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations
Transformation of points and line
2-D rotation, translation
Homogeneous coordinates
Scaling and combined transformation
Transformations in Three-Dimensions

Thank You...

ME308 Computer Aided Design & Analysis Lec4 - Geometric Transformations

Vous aimerez peut-être aussi