Title: Transformations
1Transformations
2Content
- Coordinate systems
- 2D Transformations
- 3D Transformations
- Transformation composition
- Rotating about a pivot
- Rotating about an axis
Agradecimientos A Alex García-Alonso por
facilitar el material para la realization de
estas transparencias (http//www.sc.ehu.es/ccwgamo
a/clases)
3Coordinate systems
- An object is represented by polygons
- A polygon is a collection of vertex and edges
- To transform an object we must transform their
vertex - From local system to the global system
transformations
42D Transformations
- Translation
- Scale
- Rotation
- Deformation
52 dimensions translation
x x tx y y ty
62 dimensions scale
x sx x y sy y
72 dimensions rotation
- x r cos ?
- y r sen ?
- x r cos (? ? ) r (cos ? cos ? sen ?
sin ?) x cos ? y sen ? - y r sen (? ?) r ( cos ? sen ? sen ?
cos ?) x sin ? y cos ?
P
y
r
?
P
y
?
x
x
82 dimensions rotation
- Matricially representation with Homogenous
coordinates
92 dimensions deformation (shear)
- Deformation of x coordinate
x x hx y y y
103D Transformations
- The general expression of a 3D transformation in
Homogenous coordinates
11Transformation Matrix M44
- Describe all the transformations translation,
scale, rotation, deformation. - The composition of transformations is made by the
product of matrix - You can get the values of the transformation from
the matrix displacement, scale y turn.
123D Traslation
x x tx y y ty z z tz
133D Scale
x sx x y sy y z sz z
143D Non uniform scale
153D Rotation
163D Rotation matrix
X Rotation
Y Rotation
Z Rotation
17Others transformations
Shear in xy (z invariant)
Reflexion on plane xy
18Composite transformation
- The transformations can be applied sequentially
to a point. - The result of the first transformation
- M1 P
- The second transformation
- M2 M1 P M2 M1 P
- The composite transformation is made by the
product of the matrix - M Mn Mn-1 M2 M1
19Transformation product may not be commutative
20Hierarchy structure
- An object is positioned in its coordinate system.
- All the assembly can be positioned in another
coordinate system and so successively. - The coordinates in the final system are get by
the composite transformation.
21Rotation alrededor de un pivot
- Si el eje de rotation no pasa por el origen, son
necesarias las siguientes operaciones - Trasladar el punto de rotation Q, al origen
- Realizar la rotation
- Deshacer la traslation
- La composition de transformaciones es
- MRQ (?) M3 M2 M1
- MRQ (?) MT (qx, qy, qz) MR (?) MT (-qx, -qy,
-qz) - El escalado se realiza análogamente
22Rotation alrededor de un eje
- El eje define por un punto Q y un vector
unitario r. Se realiza una rotation de un
ángulo ?. - Se resuelve mediante composition de
transformaciones - Se enuncian las transformaciones
- Se determina el cálculo de cada una de ellas
- Se explica como evaluar los ángulos requeridos
23Rotation alrededor de un ejecomposition de
transformaciones
Position inicial
Traslation QO
Rotation ß en x
Rotation ? en y
Rotation ? en z
M1
M2
M3
M4
Rotation -ß en x
Rotation - ? en z
Traslation -QO
Position inicial
M7
M6
M5
24Rotation alrededor de un ejerelation de
transformaciones
- La matriz de transformation es
- M(Q,r) (?) M7 M6 M5 M4 M3 M2 M1
- M1 traslation QO
- M2 rotation ? en z
- M3 rotation ? en x
- M4 rotation ? en y
- M5 rotation -? en x
- M6 rotation -? en z
- M7 traslation -QO
25Rotation alrededor de un eje M1 - traslation QO
- Sea R tal que OR OQ r
- La traslation que lleva Q al origen es
- M1 MT (-qx, -qy, -qz)
M1
26(No Transcript)
27Rotation alrededor de un ejeM2 - rotation ? en z
- Calcular el ángulo ? entre los planos YZ y el
plano definido por el eje z y OR - rxy es la proyection ortogonal de r sobre XY
- R es el resultado del giro alrededor de z
- ? es el ángulo entre rxy y j (vector unitario de
y) - tener en cuenta el sentido de giro positivo k
- M2 es la matriz de rotation alrededor del eje z
- M2 MRz (?)
28Rotation alrededor de un ejeM3 - rotation ß en x
- Aplicando M2 a R se obtiene R
- R está en el plano YZ
- r lo define OR
- Calcular el ángulo ß entre r y j
- tener en cuenta el sentido de giro positivo i
- M3 es la matriz de rotation alrededor del eje x
- M3 MRx (ß)
29Rotation alrededor de un ejeM4 - rotation ? en y
- Aplicando M3 a R se obtiene R
- R está en el eje y
- Se realiza el giro ? en el eje y
- M4 es la matriz de rotation alrededor del eje y
- M4 MRy (?)
30Rotation alrededor de un ejeM5, M6, M7 -
inversas
- Una vez calculado el giro ? alrededor del eje
transformado, habrá que invertir el proceso de
transformation y para ello se calculan las
matrices inversas - M5 MRx (-ß)
- M6 MRz (-?)
- M7 MT(qx, qy, qz)
- La matriz de transformation compuesta es
- M(Q,r) (?) M7 M6 M5 M4 M3 M2 M1
31Rotation alrededor de un ejeángulo ?
- Cálculo del ángulo ?
- rxy es la proyection ortogonal de r sobre el
plano XY (rx, ry, 0) - cos ? j rxy / rxy
- ( (0, 1, 0) (rx, ry, 0) ) / (rx2 ry2
)1/2 - cos ? ry / (rx2 ry2 )1/2
- Como cos ? cos (?) , entonces
- si rx lt 0 entonces el ángulo debe ser (2?- ?) ? ?
- ?
? acos ( ry / (rx2 ry2 )1/2 ) y si rx lt 0 ?
? - ?
32Rotation alrededor de un ejeángulo ß
- Cálculo del ángulo ß
- R y r están en el plano YZ
- cos ß j r / r
- ( (0, 1, 0) (0, ry, rz) ) / (ry2
rz2 )1/2 - cos ß ry / (ry2 rz2 )1/2
- Como cos ß cos (ß) , entonces
- si rz gt 0 entonces el ángulo debe ser (2?- ß)
? ß - ß
ß acos ( ry / (ry2 rz2 )1/2 ) y si rz
gt 0 ? ß - ß