0% encontró este documento útil (0 votos)
14 vistas6 páginas

T3 GPC

Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
14 vistas6 páginas

T3 GPC

Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

a64b0469ff35958ef4ab887a898bd50bdfbbe91a-11157080

Tema 3. Transformaciones afines.


Definición
Una transformación geométrica es un mecanismo para alterar elementos geométricos.
Se incluyen cambios de posición, orientación, tamaño y forma; todo aquello que
suponga el desplazamiento de los puntos en un sistema de coordenadas.

Dicho esto, una transformación afín es aquella que conserva las aristas paralelas y los
puntos finitos después de operar sobre la geometría. Sea dicho que también se
considera una transformación afín una combinación de diferentes transformaciones
afines.

Coordenadas homogéneas
Los puntos en la geometría tridimensional se definen con tres componentes: (x, y, z).
Con esto, las transformaciones se pueden expresan como matrices 33. No obstante,
las coordenadas cartesianas por sí solas presentan limitaciones al realizar
composiciones de transformaciones. Como veremos más adelante para realizar una
composición se hace uso de la multiplicación de matrices. El problema radica en que
una transformación fundamental, la traslación, no se puede expresar mediante una
multiplicación de matrices en un sistema cartesiano ordinario.

Para resolver esto, se introducen las coordenadas homogéneas, en las que se añade
una cuarta componente a cada punto. Así, un punto (x, y, z) en 3D se expande a
(wx , wy , wz , w) en coordenadas homogéneas. Aquí, w es un valor que, cuando es igual
a 1, mantiene la misma posición en el espacio cartesiano original. Este sistema permite
que todas las transformaciones afines se expresen de manera uniforme mediante
multiplicación de matrices de 4 × 4.

1. Transformaciones de cuerpos rígidos


Se habla de una transformación de cuerpo rígido a aquellas que conservan las
longitudes y los ángulos de las aristas. Estas son:

Traslación: cambia las coordenadas de posición P de un objeto.

Se representa con un vector T T = (tx , ty , tz )


En geometría cartesiana la posición de destino Pʼ) se obtiene de la suma de P y
T

x′ tx x

P =T +P ; y′ = ty + y
z′ tz z

Tema 3. Transformaciones afines. 1

Reservados todos los derechos. No se permite la explotación económica ni la transformación de esta obra. Queda permitida la impresión en su totalidad.
a64b0469ff35958ef4ab887a898bd50bdfbbe91a-11157080

Usando coordenadas homogéneas la traslación se obtiene por multiplicación:

x′ 1 0 0 tx x

Reservados todos los derechos. No se permite la explotación económica ni la transformación de esta obra. Queda permitida la impresión en su totalidad.
y′ 0 1 0 ty y
P′ = T ⋅ P ; = ⋅
z′ 0 0 1 tz z
1 0 0 0 1 1
Rotación: gira un objeto alrededor de un eje que pasa el origen.

Se representa con dicho eje y un ángulo ( θ ).

Se calcula multiplicando las coordenadas P por el coseno o el seno del angulo:

x′ 1 0 0 0 x
y′ 0 cos θ − sin θ 0 y
P′ = R ⋅ P ; =
z′ 0 sin θ cos θ 0 z
1 0 0 0 1 1

Reflexión: se obtiene la forma en espejo del objeto respecto a un plano de


coordenadas.

En 3 dimensiones los planos pueden ser XY, YZ y XZ. Se definen por los
vectores de dichos ejes.

Se obtiene mediante el producto matricial de una matriz identidad con un 1 en el


eje que no está presente en el plano de reflexión:

1 0 0 0
0 1 0 0
RflxX Y =
0 0 −1 0
0 0 0 1

−1 0 0 0
0 1 0 0
RflxY Z =
0 0 1 0
0 0 0 1

1 0 0 0
0 −1 0 0
RflxXZ =
0 0 1 0
0 0 0 1

Tema 3. Transformaciones afines. 2

Las descargas sin publicidad se realizan con las coins


a64b0469ff35958ef4ab887a898bd50bdfbbe91a-11157080

2. Transformaciones de cuerpos no rígidos


Se habla de una transformación de cuerpo no rígido a aquellas que alteran las
longitudes y los ángulos de las aristas.

Escalado

Reservados todos los derechos. No se permite la explotación económica ni la transformación de esta obra. Queda permitida la impresión en su totalidad.
Cambia el tamaño de un objeto en cualquiera de los 3 ejes o una combinación de ellos.
Se mantiene la proporcionalidad de las aristas del objeto.
El escalado se realiza mediante la multiplicación de sus componentes.

x′ sx 0 0 0 x
y′ 0 sy 0 0 y
= ⋅
z′ 0 0 sz 0 z
1 0 0 0 1 1

Desencajado (shear)
Distorsiona el objeto en una dirección concreta. Mantiene el paralelismo entre aristas (si
existe). Hay dos tipos de desencajado:

El desencajado en un eje usa la matriz El desencajado en dos ejes es muy


HAB siendo A y B ejes de coordenadas. similar al de la izquierda pero con ligeras
Se introduce el valor s: diferencias.

A: indica el eje sobre el que se Tanto A como B indican las coordenadas


moverán los puntos. En la matriz, distorsionadas (sobre los que se mueven
indica la fila donde está s. los puntos). Luego, ambos también
indican en la matriz las filas donde
B: indica el eje sobre el que se calcula
posicionar los factores s y t.
el desencajado. En la matriz, indica la
columna en la que está s. El eje que sobra indica la columna de la
matriz H donde se deben colocar los
B y la coordenada que sobra no cambian.
factores para realizar el cálculo.
−1 0 s 0
−1 s 0 0
0 1 0 0
HXZ (s) = 0 1 0 0
0 0 1 0 HXZ (s) =
0 t 1 0
0 0 0 1
0 0 0 1

3. Composición de transformaciones
La composición de transformaciones afines se realizan mediante el producto matricial
de las operaciones realizadas. De esta manera, se puede realizar una serie de
transformaciones afines con una única matriz.

Tema 3. Transformaciones afines. 3

Las descargas sin publicidad se realizan con las coins


a64b0469ff35958ef4ab887a898bd50bdfbbe91a-11157080

Hay que tener en cuenta que en el Si se añade una transformación en una


producto matricial sí que importa el composición se deben añadir a la
orden de los factores. T1 x T2 tiene un izquierda para afectar los ejes globales.
resultado diferente a T2 x T1. Por la derecha afecta los ejes locales.

Composiciones comunes
Rotación local Escalado local
La rotación se realiza siempre en Con el escalado ocurre algo similar. Se
referencia al origen de coordenadas. Por debe realizar posicionando el centro de
esto si el centro de masas del objeto no masas del objeto en el origen de porque,
se encuentra en dicho origen la rotación en caso contrario, la transformación no
no se realizará sobre si mismo, que es lo es correcta y además hay un
deseable. desplazamiento en el espacio
potencialmente indeseado.

Por tanto, se hace una composición:


llevar modelo al origen, rotar y devolver a
posición original. De forma matemática
Se soluciona igual que el anterior:
sería:
S ′ = T0 ⋅ S ⋅ T0−1
R′ = T0 ⋅ R ⋅ T0−1
S es la matriz de escalado y Sʼ el
R es la matriz de rotación y Rʼ la rotación
escalado correcto. T0 es la traslación al
correcta. T0 es la traslación al origen.
origen.

Tema 3. Transformaciones afines. 4

Reservados todos los derechos. No se permite la explotación económica ni la transformación de esta obra. Queda permitida la impresión en su totalidad.
a64b0469ff35958ef4ab887a898bd50bdfbbe91a-11157080

Orientación de la cámara
La orientación de la cámara se realiza mediante una
composición de transformaciones.

Se define mediante los siguientes parámetros:

Reservados todos los derechos. No se permite la explotación económica ni la transformación de esta obra. Queda permitida la impresión en su totalidad.
Posición de la cámara (c)

Punto al que mira (l )

Dirección “arribaˮ del mundo (u’)

se deben calcular 3 vectores:

Vector de la vista (v) v= c−l


∣c−l∣
v×u′
Vector derecha (r ) r= ∣v×u′ ∣

Vector arriba (u) u=v×r

Con todo esto se puede componer la matriz de transformación de la cámara, la cual es


una composición de transformaciones:

Transformación de normales
Al realizar las transformaciones que hemos visto a lo largo del tema, solo se
transformaba la geometría. Sin embargo también se deben transformar los vectores
asociados a esta geometría, como los vectores normales.

Tema 3. Transformaciones afines. 5

Las descargas sin publicidad se realizan con las coins


a64b0469ff35958ef4ab887a898bd50bdfbbe91a-11157080

Para hacerlo, se debe realizar la transformación en el modelo de vista, es decir,


multiplicando la matriz ModelView ( M ) a la matriz de transformación de los puntos.
Luego para mantener la propiedad de las normales (normal x vector  0 se debe
multiplicar M −1 a la transformación de las normales.

Reservados todos los derechos. No se permite la explotación económica ni la transformación de esta obra. Queda permitida la impresión en su totalidad.
Al realizar un escalado sobre un objeto, aún con este cálculo de por medio sus
normales dejan de ser perpendiculares y unitarias. Por esto se deben normalizar las
normales (recalcular) para evitar resultados incorrectos en posteriores cálculos de
iluminación.

Tema 3. Transformaciones afines. 6

Las descargas sin publicidad se realizan con las coins

También podría gustarte