Sie sind auf Seite 1von 34

Transformaciones

Geomtricas
Computacin Grfica II
Traslacin
La Traslacin es el proceso
de agregar otro vector encima
del original para as obtener
un vector nuevo con una
posicin diferente.
Ejemplo:

Si

P=[x,y,z]

P = [ x , y , z ] P = P + T
T = [ dx , dy, dz ]
REPRESENTACIN MATRICIAL - 2D
Las ecuaciones de traslacin se pueden representar como una matriz de 3x3 en
coordenadas homogneas.

Esta ecuacin se puede representar de la siguiente manera.


MATRIZ DE TRASLACIN - 2D

Donde dx y dy son los valores que se


quiere aadir a la posicin
inicial.
EJEMPLO - 2D

Traslacin de un objeto 3 unidades hacia la derecha del eje X y -4 unidades


hacia abajo en el eje Y.
REPRESENTACIN MATRICIAL - 3D
Las transformaciones tridimensionales son representadas por matrices de 4x4.

1 0 0 dx x x
P 0 1 0 dy y y
0 0 1 dz z z
0 0 0 1
1 1

Matriz de Traslacin P
Ejemplo - 3d y

( 5 , 2 , 0 ) = P
P=(1,5,6)
x

z
Traslacin de un objeto 4 unidades a la derecha en el eje X, -3 unidades
en el eje Y y
-6 unidades hacia adentro en el eje Z.
Escalamiento
Escalamiento Bidimensional
- El escalamiento se hace con un factor sx en el eje x y en
un factor sy en el eje y.

Si el factor de escalamiento se encuentra en <0,1>,


el objeto se encoge.
Si el factor de escalamiento es > 1, el objeto se
crece.

- Escalamiento uniforme sx = sy
Escalamiento Bidimensional
Se expresa con la siguiente ecuacin:

En forma matricial
Escalamiento Bidimensional
En coordenadas homogneas:
Escalamiento Bidimensional
Definiendo:

se tiene que:
Escalamiento Bidimensional
Dados:

Reemplazando en:

Obtenindose:
Escalamiento Bidimensional
El producto matricial de e es:

- La inversa de un escalamiento es
Escalamiento Bidimensional
Ejemplo: Se escala a en el eje x y a en el eje y .
El escalamiento se efecta con respecto al origen.
Escalamiento tridimensional
La matriz de escalamiento sera la siguiente:

Y al multiplicar por el vector de puntos queda:


escalamiento tridimensional

( 0, 6, 2 ) = P
P = ( 0, 1, 1 )

Escalamiento de un objeto a 0 en el eje X, a 6 en el


eje Y y a 2 en el eje Z.
Rotacin
rotacin bidimensional
Para rotar un punto P un ngulo se tienen las siguientes
ecuaciones:
rotacin bidimensional
En forma matricial:

En coordenadas homogneas:
rotacin bidimensional
Donde:

Tenindose que:

Puede demostrarse que dos rotaciones sucesivas son aditivas,


es decir, que dados dos ngulos 1 y 2 se cumple la igualdad
rotacin bidimensional
Ejemplo: En la figura se muestra la rotacin de la casa 45,
con respecto al origen.
rotacin bidimensional
Si queremos rotar un objeto con respecto a un punto
arbitrario P1 subdividimos el problema en 3 transformaciones:

Trasladar de forma que P1 coincida con el origen.

Rotar.

Trasladar de forma que el punto en el origen retorne a P1.


rotacin bidimensional
rotacin bidimensional
La transformacin neta aplicada es:
rotacin tridimensional
La rotacin bidimensional es una rotacin con respecto al eje
z, por lo tanto su matriz de rotacin en coordenadas
homogneas es:
rotacin tridimensional
La matriz de rotacin con respecto al eje x es:

La matriz de rotacin con respecto al eje y es:


rotacin tridimensional
y y

x
x

z z

Rotacin sobre el eje Z de una figura con


= 20.
Rotacin con
cuaterniones
Breve definicin de Cuaterniones - William Hamilton(1843)
Es un conjunto de 4 nmeros. Generalmente un escalar y tres
nmeros complejos.

Estos son originales por la frmula fundamental de su


multiplicacin:

i.i = j.j = k.k = i.j.k = -1


Representacin Vectorial
Las los 3 nmeros complejos de los cuaterniones pueden
representarse en el espacio fsico a travs de vectores:

Escalar: w

Vector: v = (x.i + y.j + z.k)

Cuaternio Resultante: q = w+v q=(w,v) q=(w+x.i+y.i+z.k)


Rotacin con cuaterniones
Representamos un punto en el espacio como cuaternio:
v = (x, y, z) , el cuaternio que le corresponde sera P=(0, x, y, z)

Representamos el eje de giro como un cuaternin unitario:

q = ( cos( /2) + sen( /2) . )


Siento el ngulo de giro:

P = q.P.q
Representado matricialmente
Xp Xp
1-2(y^2+z^2) 2(xy-sz) 2(xz+sy)

P Yp 2(xy+sz) 1-2(x^2+z^2) 2(yz-sx) Yp


2(xz-sy) 2(zy+sx) 1-2(x^2+y^2)
Zp Zp

s = cos(/2) x = sen(/2)a y = sen(/2)b z = sen(/2)c

Das könnte Ihnen auch gefallen