Transformaciones geomtricas en 2D y 3D
Por Mario H Tiburcio Ziga
Profesor del Depto. de Sistemas y Computacin
Instituto Tecnolgico de Zacatepec
Introduccin
Grficas por computadora (Computer Graphics) Estudia los procedimientos para producir despliegues visuales en dispositivos de salida como el monitor de una computadora.
M.C. Mario Humberto Tiburcio Ziga
Introduccin
Las computadoras son herramientas poderosas para producir imgenes en forma rpida y poderosa.
No existe un rea en la que no se apliquen las grficas por computadora.
M.C. Mario Humberto Tiburcio Ziga
Ejemplos de aplicacin de las grficas por computadora
CAD/CAM Arte Grficas de presentacin (informes) Entretenimiento (cine, juegos) Educacin y capacitacin Visualizacin de informacin Procesamiento de imgenes Interfaces de usuario Etc, etc, etc,.
M.C. Mario Humberto Tiburcio Ziga
Primitivas de graficacin
Haciendo uso de primitivas de graficacin como las que permiten dibujar pixeles, lneas, crculos, rectngulos, etc., se pueden crear una gran variedad de figuras y formas. Estas primitivas son los ladrillos en la construccin de depliegues grficos por computadora.
M.C. Mario Humberto Tiburcio Ziga
Las formas y figuras grficas se pueden alterar o manipular.
cambiar su dimensin cambiar su posicin rotarlas reflejarlas enchuecarlas
M.C. Mario Humberto Tiburcio Ziga
Cmo se llevan a cabo estas alteraciones y manipulaciones ?
Aplicando transformaciones geomtricas a las figuras u objetos deseados. Una transformacin geomtrica altera la descripcin de las coordenadas de los objetos.
M.C. Mario Humberto Tiburcio Ziga
Transformacin geomtrica en el plano y en el espacio
Una transformacin geomtrica puede aplicarse a figuras planas (2D) o a objetos en el espacio (3D).
Si los puntos que se alteran tienen coordenadas de dos componentes (x,y), la transformacin es en 2D.
Y si alteran puntos con coordenadas (x,y,z), la transformacin es en 3D.
M.C. Mario Humberto Tiburcio Ziga
M.C. Mario Humberto Tiburcio Ziga
Objetivo
Mostrar cmo realizar transformaciones geomtricas bsicas a objetos en 2D y 3D.
M.C. Mario Humberto Tiburcio Ziga
Transformaciones geomtricas bsicas en 2D
Escalacin Traslacin Rotacin
M.C. Mario Humberto Tiburcio Ziga
Transformaciones geomtricas bsicas en 3D
Escalacin Traslacin
Rotacin en torno al eje X
Rotacin en torno al eje Y Rotacin en torno al eje Z
M.C. Mario Humberto Tiburcio Ziga
Procedimiento general al aplicar una transformacin geomtrica
Primero se debe tener la informacin de las coordenadas del objeto a transformar. Se selecciona la transformacin geomtrica por realizar. Se aplica la transformacin seleccionada a cada una de las coordenadas originales del objeto, para obtener las coordenadas modificadas del objeto. Se redibuja el objeto con las nuevas coordenadas, visualizndose el objeto ya M.C. Mario Humberto Tiburcio Ziga modificado.
Procedimiento al aplicar una T.G.
D
Escalacin Sx=2 Sy=3
D C
x=x.Sx y=y.Sy
A (0,0) B (2,0) C (2,2) D (0,2)
M.C. Mario Humberto Tiburcio Ziga
A (0,0) B (4,0) C (4,6) D (0,6)
Escalacin 2D
Nos permitir cambiar las dimensiones de un objeto. Requiere 2 parmetros:
Sx = Factor de escalacin en X Sy = Factor de escalacin en Y Sx,Sy > 1 Aumenta la dimensin Sx,Sy < 1 Disminuye la dimensin Sx,Sy = 1 Se mantiene la dimensin
M.C. Mario Humberto Tiburcio Ziga
M.C. Mario Humberto Tiburcio Ziga
Traslacin 2D
Nos permitir cambiar la posicin de un objeto, movindolo en lnea recta desde una posicin inicial a la posicin final.
Requiere 2 parmetros:
Tx = Desplazamiento en X Ty = Desplazamiento en Y Tx, Ty > 0 Desplazamiento positivo Tx, Ty < 0 Desplazamiento negativo Tx,Ty = 0 No hay desplazamiento
M.C. Mario Humberto Tiburcio Ziga
M.C. Mario Humberto Tiburcio Ziga
Rotacin 2D
Nos permite rotar o girar un objeto en torno al origen un ngulo dado Requiere 1 parmetro: q = ngulo de rotacin q > 0 Rotacin contraria a sentido de las
manecillas del reloj
q < 0 Rotacin en el sentido de las manecillas del
reloj
q = 0 Sin rotacin
M.C. Mario Humberto Tiburcio Ziga
M.C. Mario Humberto Tiburcio Ziga
Escalacin 3D
Nos permitir cambiar las dimensiones de un objeto. Requiere 3 parmetros: Sx = Factor de escalacin en X Sy = Factor de escalacin en Y Sz = Factor de escalacin en Z Sx,Sy,Sz > 1 Aumenta la dimensin Sx,Sy,Sz < 1 Disminuye la dimensin Sx,Sy,Sz = 1 Se mantiene la dimensin
M.C. Mario Humberto Tiburcio Ziga
M.C. Mario Humberto Tiburcio Ziga
Traslacin 3D
Nos permitir cambiar la posicin de un objeto, movindolo en lnea recta desde una posicin inicial a la posicin final. Requiere 3 parmetros:
Tx = Desplazamiento en X Ty = Desplazamiento en Y Tz = Desplazamiento en Z Tx, Ty,Tz > 0 Desplazamiento positivo Tx, Ty,Tz < 0 Desplazamiento negativo Tx,Ty,Tz = 0 No hay desplazamiento
M.C. Mario Humberto Tiburcio Ziga
M.C. Mario Humberto Tiburcio Ziga
Rotacin 3D en torno al eje X
Nos permite rotar o girar un objeto en torno al eje X un ngulo dado Requiere 1 parmetro: q = ngulo de rotacin q > 0 Rotacin contraria a sentido de las
manecillas del reloj
q < 0 Rotacin en el sentido de las manecillas del
reloj
q = 0 Sin rotacin
M.C. Mario Humberto Tiburcio Ziga
M.C. Mario Humberto Tiburcio Ziga
M.C. Mario Humberto Tiburcio Ziga
Rotacin 3D en torno al eje Y
Nos permite rotar o girar un objeto en torno al eje Y un ngulo dado Requiere 1 parmetro: q = ngulo de rotacin q > 0 Rotacin contraria a sentido de las
manecillas del reloj
q < 0 Rotacin en el sentido de las manecillas del
reloj
q = 0 Sin rotacin
M.C. Mario Humberto Tiburcio Ziga
M.C. Mario Humberto Tiburcio Ziga
Rotacin 3D en torno al eje Z
Nos permite rotar o girar un objeto en torno al eje Z un ngulo dado Requiere 1 parmetro: q = ngulo de rotacin q > 0 Rotacin contraria a sentido de las
manecillas del reloj
q < 0 Rotacin en el sentido de las manecillas del
reloj
q = 0 Sin rotacin
M.C. Mario Humberto Tiburcio Ziga
M.C. Mario Humberto Tiburcio Ziga
Representacin matricial de transformaciones geomtricas
Facilita el cmputo de las transformaciones a simples multiplicaciones matriciales.
Se requiere representar las coordenadas en forma homogna. (x,y) se representa como (x,y,1) (x,y,z) se representa como (x,y,z,1)
M.C. Mario Humberto Tiburcio Ziga
Representacin matricial de las transformaciones geomtricas
Escalacin 2D Sx 0 0 (x,y,1) 0 Sy 0 0 0 1
= (x,y,1)
M.C. Mario Humberto Tiburcio Ziga
Representacin matricial de las transformaciones geomtricas
Traslacin 2D 1 0 0 0 1 0 Tx Ty 1
(x,y,1)
= (x,y,1)
M.C. Mario Humberto Tiburcio Ziga
Representacin matricial de las transformaciones geomtricas
Rotacin 2D Cosq Senq 0 (x,y,1) -Senq Cosq 0 0 0 1 = (x,y,1)
M.C. Mario Humberto Tiburcio Ziga
Representacin matricial de las transformaciones geomtricas
Escalacin 3D
Sx 0 0 0 (x,y,z,1) 0 Sy 0 0 = (x,y,z,1) 0 0 Sz 0 0 0 0 1
M.C. Mario Humberto Tiburcio Ziga
Representacin matricial de las transformaciones geomtricas
Traslacin 3D
1 0 0 Tx 0 1 0 Ty 0 0 1 Tz 0 0 = (x,y,z,1) 0 1
(x,y,z,1)
M.C. Mario Humberto Tiburcio Ziga
Representacin matricial de las transformaciones geomtricas
Rotacin 3D entorno a X
1 (x,y,z,1) 0 0 0
0 Cosq Senq 0 = (x,y,z,1) 0 -Senq Cosq 0 0 0 0 1
M.C. Mario Humberto Tiburcio Ziga
Representacin matricial de las transformaciones geomtricas
Rotacin 3D entorno a Y Cosq 0 -Senq 0 0 1 0 0 = (x,y,z,1) Senq 0 Cosq 0 0 0 0 1
(x,y,z,1)
M.C. Mario Humberto Tiburcio Ziga
Representacin matricial de las transformaciones geomtricas
Rotacin 3D entorno a Z Cosq Senq 0 0 (x,y,z,1) -Senq Cosq 0 0 0 0 1 0 0 0 0 1 = (x,y,z,1)
M.C. Mario Humberto Tiburcio Ziga
Combinacin de transformaciones geomtricas.
Se logra multiplicando las matrices correspondientes a las tranformaciones geomtricas a combinar, obtenindose una matriz compuesta.
M.C. Mario Humberto Tiburcio Ziga
Combinacin de transformaciones geomtricas.
Ejemplo: Escalar un objeto al doble en X y al triple en Y, rotarlo 45 grados y trasladarlo 7 unidades en X y 8 en Y, requiere la combinacin siguiente:
2 0 0 0 3 0 0 0 1
Cos 45 Sen 45 0 -Sen 45 Cos 45 0 0 0 1
1 0 0 0 1 0 7 8 1
M.C. Mario Humberto Tiburcio Ziga
DEMOSTRACIONES
M.C. Mario Humberto Tiburcio Ziga