transformaciones. contenido sistemas de coordenadas transformaciones en 2d transformaciones en 3...

32
Transformaciones

Upload: alisa-del-cid

Post on 13-Feb-2015

31 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Transformaciones. Contenido Sistemas de coordenadas Transformaciones en 2D Transformaciones en 3 dimensiones Composición de transformaciones Rotación

Transformaciones

Page 2: Transformaciones. Contenido Sistemas de coordenadas Transformaciones en 2D Transformaciones en 3 dimensiones Composición de transformaciones Rotación

Contenido

• Sistemas de coordenadas

• Transformaciones en 2D

• Transformaciones en 3 dimensiones

• Composición de transformaciones

• Rotación alrededor de un pivot

• Rotación alrededor de un eje

Agradecimientos: A Alex García-Alonso por facilitar el material para la realización de estas transparencias (http://www.sc.ehu.es/ccwgamoa/clases)

Page 3: Transformaciones. Contenido Sistemas de coordenadas Transformaciones en 2D Transformaciones en 3 dimensiones Composición de transformaciones Rotación

Sistemas de coordenadas

• Un objeto se representa por polígonos

• Un polígono es una colección de vértices y aristas

• Para transformar un objeto se transforman sus vértices

• Del sistema local al sistema global: transformaciones

Page 4: Transformaciones. Contenido Sistemas de coordenadas Transformaciones en 2D Transformaciones en 3 dimensiones Composición de transformaciones Rotación

Transformaciones en 2D

• Traslación

• Escalado

• Rotación

• Deformación

Page 5: Transformaciones. Contenido Sistemas de coordenadas Transformaciones en 2D Transformaciones en 3 dimensiones Composición de transformaciones Rotación

2 dimensiones: traslación

x´ 1 0 tx x

y´ 0 1 ty y

1 0 0 1 1

x´ = x + tx

y´ = y + ty

Page 6: Transformaciones. Contenido Sistemas de coordenadas Transformaciones en 2D Transformaciones en 3 dimensiones Composición de transformaciones Rotación

2 dimensiones: escalado

x´ = sx ·x

y´ = sy ·y

x´ sx 0 0 x

y´ 0 sy 0 y

1 0 0 1 1

Page 7: Transformaciones. Contenido Sistemas de coordenadas Transformaciones en 2D Transformaciones en 3 dimensiones Composición de transformaciones Rotación

2 dimensiones: rotación

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

P’

x

y

x’

y’ r

Page 8: Transformaciones. Contenido Sistemas de coordenadas Transformaciones en 2D Transformaciones en 3 dimensiones Composición de transformaciones Rotación

2 dimensiones: rotación

• Representado matricialmente en coordenadas homogéneas:

x´ cos β -sin β 0 x

y´ sin β cos β 0 y

1 0 0 1 1

Page 9: Transformaciones. Contenido Sistemas de coordenadas Transformaciones en 2D Transformaciones en 3 dimensiones Composición de transformaciones Rotación

2 dimensiones: deformación (shear)

• Deformación de la coordenada x:

x´ 1 hx 0 x

y´ 0 1 0 y

1 0 0 1 1

x´ = x + hx ·y

y´ = y

Page 10: Transformaciones. Contenido Sistemas de coordenadas Transformaciones en 2D Transformaciones en 3 dimensiones Composición de transformaciones Rotación

Transformaciones en 3 dimensiones

• La expresión general de una transformación en tres dimensiones en coordenadas homogéneas es:

x´ a11 a12 a13 a14 x

y´ a21 a22 a23 a24 y

z´ a31 a32 a33 a34 z

1 0 0 0 1 1

Page 11: Transformaciones. Contenido Sistemas de coordenadas Transformaciones en 2D Transformaciones en 3 dimensiones Composición de transformaciones Rotación

Matriz de transformación M44

• Describe todas las transformaciones: traslación, escalado, rotación, deformación.

• La composición de transformaciones se realiza mediante el producto de matrices

• Se pueden obtener los valores de la transformación a partir de la matriz: desplazamiento, escala y giro.

Page 12: Transformaciones. Contenido Sistemas de coordenadas Transformaciones en 2D Transformaciones en 3 dimensiones Composición de transformaciones Rotación

3D: Traslación

x´ 1 0 0 tx x

y´ 0 1 0 ty y

z´ 0 0 1 tz z

1 0 0 0 1 1

x´ = x + tx

y´ = y + ty

z´ = z + tz

Page 13: Transformaciones. Contenido Sistemas de coordenadas Transformaciones en 2D Transformaciones en 3 dimensiones Composición de transformaciones Rotación

3D: Escalado

x´ sx 0 0 0 x

y´ 0 sy 0 0 y

z´ 0 0 sz 0 z

1 0 0 0 1 1

x´ = sx ·x

y´ = sy ·y

z´ = sz ·z

Page 14: Transformaciones. Contenido Sistemas de coordenadas Transformaciones en 2D Transformaciones en 3 dimensiones Composición de transformaciones Rotación

3D: Escalado no homogéneo

sx sy sz

Page 15: Transformaciones. Contenido Sistemas de coordenadas Transformaciones en 2D Transformaciones en 3 dimensiones Composición de transformaciones Rotación

3D: Rotación

Page 16: Transformaciones. Contenido Sistemas de coordenadas Transformaciones en 2D Transformaciones en 3 dimensiones Composición de transformaciones Rotación

3D: Matrices de rotaciónx´ 1 0 0 0 x

y´ 0 cos θ -sin θ 0 y

z´ 0 sin θ cos θ 0 z

1 0 0 0 1 1

Rotación en x

x´ cos θ 0 sin θ 0 x

y´ 0 1 0 0 y

z´ -sin θ 0 cos θ 0 z

1 0 0 0 1 1

Rotación en y

x´ cos θ -sin θ 0 0 x

y´ sin θ cos θ 0 0 y

z´ 0 0 1 0 z

1 0 0 0 1 1

Rotación en z

Page 17: Transformaciones. Contenido Sistemas de coordenadas Transformaciones en 2D Transformaciones en 3 dimensiones Composición de transformaciones Rotación

Otras transformaciones

x´ 1 0 a 0 x

y´ 0 1 b 0 y

z´ 0 0 1 0 z

1 0 0 0 1 1

Oblicua en xy (z invariante)

x´ 1 0 0 0 x

y´ 0 1 0 0 y

z´ 0 0 -1 0 z

1 0 0 0 1 1

Reflexión plano xy

Page 18: Transformaciones. Contenido Sistemas de coordenadas Transformaciones en 2D Transformaciones en 3 dimensiones Composición de transformaciones Rotación

Composición de transformaciones

• Se pueden aplicar sucesivas transformaciones a un punto.– Al resultado de la primera transformación:

• M1 · P

– se aplica una segunda transformación:• M2 ·[ M1 · P] = [M2 · M1 ] · P

• La composición de transformaciones se realiza mediante el producto de matrices

• M = Mn ·Mn-1 ·… ·M2 · M1

Page 19: Transformaciones. Contenido Sistemas de coordenadas Transformaciones en 2D Transformaciones en 3 dimensiones Composición de transformaciones Rotación

La composición de transfor-maciones no es conmutativa

Page 20: Transformaciones. Contenido Sistemas de coordenadas Transformaciones en 2D Transformaciones en 3 dimensiones Composición de transformaciones Rotación

Estructura jerárquica

• Un objeto se sitúa respecto a su sistema de coordenadas.

• Todo el conjunto se puede situar en un sistema de coordenadas distinto y así sucesivamente.

• Las coordenadas en el sistema final se obtienen por composición de transformaciones.

Page 21: Transformaciones. Contenido Sistemas de coordenadas Transformaciones en 2D Transformaciones en 3 dimensiones Composición de transformaciones Rotación

Rotación alrededor de un pivot

• Si el eje de rotación no pasa por el origen, son necesarias las siguientes operaciones– Trasladar el punto de rotación Q, al origen– Realizar la rotación– Deshacer la traslación

• La composición de transformaciones es:• MRQ (θ) = M3 · M2 · M1

• MRQ (θ) = MT (qx, qy, qz) ·MR (θ) · MT (-qx, -qy, -qz)

• El escalado se realiza análogamente

Page 22: Transformaciones. Contenido Sistemas de coordenadas Transformaciones en 2D Transformaciones en 3 dimensiones Composición de transformaciones Rotación

x

y

z

θ

Q

R

O

r

Rotación alrededor de un eje

• El eje define por un punto “Q” y un vector unitario “r”. Se realiza una rotación de un ángulo θ.

• Se resuelve mediante composiciónde transformaciones

– Se enuncian las transformaciones– Se determina el cálculo de cada una de ellas– Se explica como evaluar los ángulos requeridos

Page 23: Transformaciones. Contenido Sistemas de coordenadas Transformaciones en 2D Transformaciones en 3 dimensiones Composición de transformaciones Rotación

Rotación alrededor de un eje:composición de transformaciones

Rotación-β en x

x

y

z

Q

Rr

x

y

z Q’

R’

x

y

z Q’

R´´

Rotación- en z

Traslación-QO

Posición inicial

x

y

z

Q

Rr

x

y

z Q’

R’

x

y

z Q’

R´´

x

y

z Q’

R´´´

Traslación QO

Rotación en z

Rotaciónβ en x

Rotaciónθ en y

x

y

z Q’

R´´´

Posición inicial

M1 M2 M3 M4

M5M6

M7

Page 24: Transformaciones. Contenido Sistemas de coordenadas Transformaciones en 2D Transformaciones en 3 dimensiones Composición de transformaciones Rotación

Rotación alrededor de un eje:relación de transformaciones

• La matriz de transformación es:• M(Q,r) (θ) = M7 · M6 · M5 · M4 · M3 · M2 · M1

• M1 : traslación QO

• M2 : rotación en z

• M3 : rotación en x

• M4 : rotación en y

• M5 : rotación - en x

• M6 : rotación - en z

• M7 : traslación -QO

Page 25: Transformaciones. Contenido Sistemas de coordenadas Transformaciones en 2D Transformaciones en 3 dimensiones Composición de transformaciones Rotación

x

y

z

θ

Q

R

O

r

x

y

zQ’

R’

Rotación alrededor de un eje: M1 - traslación QO

– Sea R tal que OR = OQ + r– La traslación que lleva Q al origen es:

• M1 = MT (-qx, -qy, -qz)

M1

Page 26: Transformaciones. Contenido Sistemas de coordenadas Transformaciones en 2D Transformaciones en 3 dimensiones Composición de transformaciones Rotación

R´´

x

y rxy

z

Q’

R’

α

Page 27: Transformaciones. Contenido Sistemas de coordenadas Transformaciones en 2D Transformaciones en 3 dimensiones Composición de transformaciones Rotación

R´´

x

y rxy

z

Q’

R’

α

Rotación alrededor de un eje:M2 - rotación en z

– Calcular el ángulo entre los planos YZ y el plano definido por el eje z y OR’

• rxy es la proyección 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 rotación alrededor del eje z:

• M2 = MRz ()

Page 28: Transformaciones. Contenido Sistemas de coordenadas Transformaciones en 2D Transformaciones en 3 dimensiones Composición de transformaciones Rotación

Rotación alrededor de un eje:M3 - rotación β 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 rotación alrededor del eje x:

• M3 = MRx (β)

x

y

zQ’

R´´´ R´´

β

Page 29: Transformaciones. Contenido Sistemas de coordenadas Transformaciones en 2D Transformaciones en 3 dimensiones Composición de transformaciones Rotación

Rotación alrededor de un eje:M4 - rotación θ 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 rotación alrededor del eje y:

• M4 = MRy (θ)

x

y

z Q’

R´´´

Page 30: Transformaciones. Contenido Sistemas de coordenadas Transformaciones en 2D Transformaciones en 3 dimensiones Composición de transformaciones Rotación

Rotación alrededor de un eje:M5, M6, M7 - inversas

– Una vez calculado el giro θ alrededor del eje transformado, habrá que invertir el proceso de transformación y para ello se calculan las matrices inversas

• M5 = MRx (-β)

• M6 = MRz (-)

• M7 = MT(qx, qy, qz)

– La matriz de transformación compuesta es:

– M(Q,r) (θ) = M7 · M6 · M5 · M4 · M3 · M2 · M1

Page 31: Transformaciones. Contenido Sistemas de coordenadas Transformaciones en 2D Transformaciones en 3 dimensiones Composición de transformaciones Rotación

= acos ( ry / (rx2 + ry

2 )1/2 )

y si rx < 0 = - α

y

z x

αrxyjrxy

R´´

x

y rxy

z

Q’

R’

α

Rotación alrededor de un eje:ángulo

– Cálculo del ángulo • rxy es la proyección ortogonal de r sobre

el plano XY: (rx, ry, 0)

• cos = j · rxy / | rxy | =

= ( (0, 1, 0) · (rx, ry, 0) ) / (rx2 + ry

2 )1/2

• cos = ry / (rx2 + ry

2 )1/2

• Como cos = cos (–) , entonces– si rx < 0 entonces el ángulo debe ser (2-

) = -

Page 32: Transformaciones. Contenido Sistemas de coordenadas Transformaciones en 2D Transformaciones en 3 dimensiones Composición de transformaciones Rotación

β = acos ( ry´´ / (ry´´2 + rz´´2 )1/2 )

y si rz´´ > 0 β = - β

x

y

zQ’

R´´´ R´´

β

β

βr´´jr´´

z x

y

Rotación 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´´) ) / (ry´´2 + rz´´2 )1/2

• cos β = ry´´ / (ry´´2 + rz´´2 )1/2

• Como cos β = cos (–β) , entonces– si rz ´´ > 0 entonces el ángulo debe ser (2- β)

β = - β