SlideShare a Scribd company logo
1 of 7
Download to read offline
2 Transformaciones en 3D
La manera más fácil de conseguir las transformaciones básicas (traslación, rotación,
escalación, en general las transformaciones afines) es utilizando matrices de
transformación.
Con ligeros cambios a las matrices, se pueden combinar para conseguir que una sola
matriz resultante nos sirva para varias de estas transformaciones.
El utilizar coordenadas homogéneas nos ayudará a obtener este efecto. Comenzaremos
explicando cómo se utilizan para conseguir transformaciones en 2 dimensiones y,
posteriormente, veremos las transformaciones en 3 dimensiones.
2.1 Coordenadas homogéneas1
Nos será útil sustituír las coordenadas (x, y) por las coordenadas (xh, yh, h), llamadas
coordenadas homogéneas, donde
x = xh/h, y = yh/h (2.1)
de donde
(xh, yh, h) = (h . x, h . y, h) (2.2)
Existe un número finito de representaciones homogéneas equivalentes para cada punto
de coordenadas (x, y) seleccionando un valor no cero para h.
Por conveniencia, escogeremos h = 1, con lo que cada posición bidimensional se
representará con las coordenadas homogéneas (x, y, 1).
Expresar posiciones en coordenadas homogéneas nos permite representar todas las
ecuaciones de transformación geométrica como multiplicaciones de matriz. Se
representan las coordenadas con vectores de columna de 3 elementos y las
operaciones de transformación se expresan como matrices de 3 por 3. Para la
traslación de un punto (x, y, 1) una distancia tx en x y una distancia ty en y, obtenemos:
x'
y’
1
=
1 0 tx
0 1 ty
0 0 1
.
x
y
1
(2.3)
2.2 Transformaciones compuestas
Esta representación nos permite “combinar” varias transformaciones en una,
multiplicando las diferentes matrices de transformación, por ejemplo, el efecto de
trasladar un objeto cierta distancia T (tx1, ty1), girarlo un cierto ángulo R(θ) y volverlo a
1
En matemáticas, se utiliza el término coordenadas homogéneas para referirse al efecto de esta representación de ecuaciones
cartesianas. Cuando se convierte un punto cartesiano (x, y) a una representación homogénea (xh, yh, h) las ecuaciones que contienen x,
y se convierten en ecuaciones homogéneas de tres parámetros xh, yh y h. Esto significa que si se sustituye cada uno de los 3 parámetros
con cualquier valor v veces ese parámetro, el valor v se puede factorizar fuera de las ecuaciones.
trasladar a su posición inicial T2 (-tx1, -ty1), se consigue multiplicando cada uno de sus
puntos P (x, y, 1) de la manera siguiente:
P’ = T . R . T2 . P (2.4)
donde P’ es el vector columna que representará al punto resultante y T, R y T2 son las
matrices de transformación correspondientes
T =
1 0 tx
0 1 ty
0 0 1
R =
cos θ - sen θ 0
sen θ cos θ 0
0 0 1
T2 =
1 0 -tx
0 1 -ty
0 0 1
(2.5)
Lo que sería lo mismo que multiplicar al punto P por la matriz M obtenida el combinar
las tres matrices
M = T2 . R . T (2.6)
M =
cos θ -sen θ tx(1 – cos θ) + ty sen θ
sen θ cos θ ty (1 – cos θ) – tx sen θ
0 0 1
(2.7)
2.3 Matrices de transformación en 3D más comunes
2.3.1 Traslación
En la representación homogénea tridimensional de las coordenadas, se traslada un
punto de la posición P = (x, y, z) a la posición P’ = (x’, y’, z’) con la operación de matriz
P’ = T x P (2.8)
donde P y P’ son vectores columna como matrices, la matriz
T =
1 0 0 tx
0 1 0 ty
0 0 1 tz
0 0 0 1
y tx, ty y tz especifican las distancias de traslación en x, y y z
x’ = x + tx
y’ = y + ty
z’ = z + tz
2.3.2 Rotación
Para generar una transformación de rotación, debemos designar un eje de rotación
respecto del cual girará el objeto, y la cantidad de rotación angular, es decir, un ángulo
(θ).
Una rotación tridimensional se puede especificar alrededor de cualquier línea en el
espacio. Los ejes de rotación más fáciles de manejar son aquellos paralelos a los ejes
de coordenadas.
Los ángulos de rotación positiva producen giros en el sentido opuesto a las manecillas
del reloj con respecto al eje de una coordenada, si el observador se encuentra viendo a
lo largo de la mitad positiva del eje hacia el origen de coordenadas.
La matriz de rotación respecto al eje z se especifica como (3.11)
Rz =
cos θ -sen θ 0 0
sen θ cos θ 0 0
0 0 1 0
0 0 0 1
La matriz de rotación respecto al eje x se especifica como (3.12)
Rx =
1 0 0 0
0 cos θ -sen θ 0
0 sen θ cos θ 0
0 0 0 1
Y la matriz de rotación respecto al eje y se especifica como (3.13)
Ry =
cos θ 0 sen θ 0
0 1 0 0
-sen θ 0 cos θ 0
0 0 0 1
Se forma una matriz de rotación inversa al sustituír el ángulo de rotación θ por –θ. Los
valores negativos para los ángulos de rotación generan rotaciones en una dirección en
el sentido del reloj, de modo que se produce la matriz identidad cuando se multiplica
cualquier matriz de rotación por su inverso2
.
2.3.2.1 Rotaciones tridimensionales generales
Es posible establecer una matriz de rotación para cualquier eje que no coincide con un
eje de coordenadas como una transformación compuesta que implica combinaciones de
traslaciones y rotaciones de los ejes de coordenadas.
Primero se desplaza el eje de rotación seleccionado a uno de los ejes de coordenadas,
después se establece la matriz de rotación con respecto del eje de coordenadas para el
ángulo de rotación específico y por último se obtiene la secuencia de transformación
inversa para regresar al eje de rotación a su posición original.
(ejercicio pag. 435-440)
2
Puesto que sólo se afecta la función de seno cuando se cambia el signo del ángulo de rotación, se puede
obtener también la matriz inversa al intercambiar renglones y columnas. Es decir que podemos calcular el
inverso de cualquier matriz de rotación R al evaluar su transpuesta (R-1
= RT
). Este método para obtener una
matriz inversa se aplica también para cualquier matriz de rotación compuesta.
2.3.2.2 Propiedad de las matrices de rotación
Dada la matriz de rotación en 2D
R(θ) =
cos θ -sin θ 0
sin θ cos θ 0
0 0 1
Considérense los primeros dos renglones de la submatriz superior izquierda de 2 x 2
como vectores. Se obtiene:
A = cos θ i – sin θ j
B = sin θ i + cos θ j
Puede mostrarse que estos vectores tienen 3 propiedades:
1. Cada uno es un vector unitario.
2. Cada uno es perpendicular al otro (su producto punto es cero).
3. El primero y segundo vectores pueden rotarse con R(θ) y quedarán en el eje x
positivo y y positivo, respectivamente (esto equivale a que el determinante sea
uno).
Estas propiedades también son válidas para las columnas de la submatriz de 2x2. Las 2
direcciones son aquellas en las que los vectores en el eje x y y son rotados.
Una matriz con estas propiedades se llama especial ortogonal.
Las 3 propiedades se extienden a las matrices de rotación en 3D que vimos
anteriormente.
Retomemos el ejemplo anterior. La matriz resultante que obtuvimos después de
multiplicar las matrices de transformación y las rotaciones en los 3 ejes, se puede
obtener directamente si pensamos en una matriz de rotación general como
R =
r1x r2x r3x
r1y r2y r3y
r1z r2z r3z
Donde cada uno de los renglones es un vector ortogonal a los otros dos. Todo lo que
tenemos que hacer es “asignar” cada uno de estos “ejes” a la figura (ejes que, después
de la transformación, quedarán sobre los ejes x, y y z).
Por ejemplo, Rz es el vector unitario sobre R1R2 que rotará al eje positivo de la z.
Rz = [r1z r2z r3z]T
= P1P2 / |P1P2|
El vector unitario Rx es perpendicular al plano de P1, P2, y P3 y rotará al eje positivo de
las x, así que Rx debe ser el producto cruz normalizado de 2 vectores en el plano:
Rz = [r1x r2x r3x]T
= P1P3 x P1P2 / |P1P3 x P1P2|
Finalmente,
Ry = [r1y r2y r3y]T
= Rz x Rx
Rotará al eje positivo de las y. La matriz compuesta está dada por
r1x r2x r3x 0
r1y r2y r3y 0
r1z r2z r3z 0
0 0 0 1
. T(-x1, -y1, -z1) = R . T
2.3.3 Escalación
La matriz para la transformación de escalación de una posición P = (x, y, z) con
respecto del origen de las coordenadas se puede escribir como (3.14)
S =
ex 0 0 0
0 ey 0 0
0 0 ez 0
0 0 0 1
Donde ex, ey, y ez pueden tener cualquier valor positivo (valores de escalación en cada
uno de los ejes, si estos no son iguales, se cambian las dimensiones relativas en el
objeto).
La escalación con respecto a una posición fija seleccionada se puede obtener con la
siguiente secuencia de transformación:
1. Se traslada el punto fijo al origen.
2. Se escala el objeto con respecto al origen.
3. Se traslada el punto fijo a su posición original.
2.3.4 Sesgo
2.4 Otras transformaciones
2.4.1 Reflexiones
Las matrices de reflexión tridimensional se establecen de manera similar a aquellas
para dos dimensiones. Las reflexiones con respecto a un eje dado son equivalentes a
rotaciones de 180º sobre ese eje. Las reflexiones con respecto de un plano equivalen a
rotaciones de 180º en un espacio cuatridimensional3
.
3
Cuando el plano de reflexión es un plano de coordenadas (xy, xz o yz) podemos considerar la
transformación como una conversión dentre los sistemas de lado izquierdo y lado derecho.
Por ejemplo, para obtener una reflexión con respecto del plano xy (cambio de sistema
de lado derecho a lado izquierdo), cambiando el signo de las coordenadas de z sin
alterar las coordenadas x y y, se utiliza la siguiente matriz de transformación:
RFz =
1 0 0 0
0 1 0 0
0 0 -1 0
0 0 0 1
Las matrices de reflexión para invertir x y y se definen de manera similar. Es posible
efectuar las reflexiones con respecto de otros planos como una combinación de
rotaciones y reflexiones del plano de las coordenadas.
2.4.2 Recortes
Las transformaciones de recorte se pueden utilizar para modificar las formas de los
objetos, también son útiles para obtener transformaciones de proyección general.
Por ejemplo, la siguiente transformación produce un recorte del eje de las z:
SHz =
1 0 a 0
0 1 b 0
0 0 1 0
0 0 0 1
Asignando cualquier valor real a a y b. El efecto es la alteración de los valores de las
coordenadas de x y y en una cantidad proporcional al valor de z, mientras que z
permanece sin cambios.
2.5 Transformaciones compuestas
Se realiza una transformación tridimensional compuesta al multiplicar las
representaciones matriciales para las operaciones individuales en la secuencia de
transformación. Esta concatenación se lleva a cabo de derecha a izquierda, donde la
matriz del extremo derecho es la primera transformación que se aplica a un objeto y la
matriz del extremo izquierdo es la última transformación.
(Lean 11.7 further: Foley 5?)
(final, ya cuando hayan entendido los conceptos, decirles que es mucho más fácil
manejar ejes de coordenadas dentro de cada uno de los objetos que estarlos llevando
al origen para cada transformación: CAMBIO DE COORDENADAS)
2.7 Cambio de sistemas de coordenadas
Cuando se manejan varios objetos al mismo tiempo, una manera alternativa de manejar
las transformaciones es pensar que cada objeto tiene su propio sistema de
coordenadas.
Para lograr este enfoque es necesario pensar en una manera de transformar las
coordenadas de cada sistema al sistema normal.
Se define Mi<-j como la transformación que convierte la representación de un punto en el
sistema de coordenadas j a su representación en el sistema de coordenadas i.
Definiendo P(i)
como la representación de un punto en el sistema de coordenadas i, P(j)
como la representación del punto en el sistema j, y P(k)
como la representación del punto
en el sistema de coordenadas k, entonces
P/i)
= Mi<-j . P(j)
y P/j)
= Mj<-jçk . P(k)
Sustituyendo, obtenemos que

More Related Content

What's hot

Ecuaciones Paramétricas - Cartesianas
Ecuaciones Paramétricas - Cartesianas Ecuaciones Paramétricas - Cartesianas
Ecuaciones Paramétricas - Cartesianas joseAngelRemacheCast
 
Ecuaciones parametricas daniel guzman
Ecuaciones parametricas daniel guzmanEcuaciones parametricas daniel guzman
Ecuaciones parametricas daniel guzmandanieljose0
 
Ecuaciones parametricas
Ecuaciones parametricasEcuaciones parametricas
Ecuaciones parametricasKenny Fereira
 
ECUACIONES PARAMETRICAS - MATEMATICA
ECUACIONES PARAMETRICAS - MATEMATICAECUACIONES PARAMETRICAS - MATEMATICA
ECUACIONES PARAMETRICAS - MATEMATICAWPRADAC
 
Mate 3 segundo tema sistemas de coordenadas
Mate 3 segundo tema sistemas de coordenadasMate 3 segundo tema sistemas de coordenadas
Mate 3 segundo tema sistemas de coordenadasjoseAngelRemacheCast
 
Investigacion derivada-de-una-curva-en-forma-parametrica
Investigacion derivada-de-una-curva-en-forma-parametricaInvestigacion derivada-de-una-curva-en-forma-parametrica
Investigacion derivada-de-una-curva-en-forma-parametricaM Marcos
 
Ecuaciones Paramétricas matematica 3
Ecuaciones Paramétricas matematica 3Ecuaciones Paramétricas matematica 3
Ecuaciones Paramétricas matematica 3JuanRengel2
 
Transformación de coordenadas
Transformación de coordenadasTransformación de coordenadas
Transformación de coordenadasdalbethlunar
 
Ficha tecnica de ecuaciones parametricas
Ficha tecnica de ecuaciones parametricasFicha tecnica de ecuaciones parametricas
Ficha tecnica de ecuaciones parametricasruben802
 
Tabla centroide-momento-inercia
Tabla centroide-momento-inerciaTabla centroide-momento-inercia
Tabla centroide-momento-inerciaJaime Pérez
 
Definición de una curva plana
Definición de una curva planaDefinición de una curva plana
Definición de una curva planaozarate
 
Unidad 2 y 3 calculo vectorial
Unidad 2  y 3 calculo vectorialUnidad 2  y 3 calculo vectorial
Unidad 2 y 3 calculo vectorialAndy Hernandez
 
Transformación de coordenadas bryan rojas ci 28714767 seccion 2 a
Transformación de coordenadas bryan rojas ci 28714767 seccion 2 aTransformación de coordenadas bryan rojas ci 28714767 seccion 2 a
Transformación de coordenadas bryan rojas ci 28714767 seccion 2 aRICHARDROJAS77
 

What's hot (20)

Ecuaciones Paramétricas - Cartesianas
Ecuaciones Paramétricas - Cartesianas Ecuaciones Paramétricas - Cartesianas
Ecuaciones Paramétricas - Cartesianas
 
Matematica
MatematicaMatematica
Matematica
 
Ecuaciones Parametricas
Ecuaciones ParametricasEcuaciones Parametricas
Ecuaciones Parametricas
 
Ecuaciones parametricas daniel guzman
Ecuaciones parametricas daniel guzmanEcuaciones parametricas daniel guzman
Ecuaciones parametricas daniel guzman
 
Ecuaciones parametricas
Ecuaciones parametricasEcuaciones parametricas
Ecuaciones parametricas
 
Ecuaciones parametricas
Ecuaciones parametricasEcuaciones parametricas
Ecuaciones parametricas
 
Ecuaciones parametricas
Ecuaciones parametricasEcuaciones parametricas
Ecuaciones parametricas
 
ECUACIONES PARAMETRICAS - MATEMATICA
ECUACIONES PARAMETRICAS - MATEMATICAECUACIONES PARAMETRICAS - MATEMATICA
ECUACIONES PARAMETRICAS - MATEMATICA
 
Mate 3 segundo tema sistemas de coordenadas
Mate 3 segundo tema sistemas de coordenadasMate 3 segundo tema sistemas de coordenadas
Mate 3 segundo tema sistemas de coordenadas
 
Investigacion derivada-de-una-curva-en-forma-parametrica
Investigacion derivada-de-una-curva-en-forma-parametricaInvestigacion derivada-de-una-curva-en-forma-parametrica
Investigacion derivada-de-una-curva-en-forma-parametrica
 
Inercia
InerciaInercia
Inercia
 
Inercia
InerciaInercia
Inercia
 
Ecuaciones Paramétricas matematica 3
Ecuaciones Paramétricas matematica 3Ecuaciones Paramétricas matematica 3
Ecuaciones Paramétricas matematica 3
 
Transformación de coordenadas
Transformación de coordenadasTransformación de coordenadas
Transformación de coordenadas
 
Ficha tecnica de ecuaciones parametricas
Ficha tecnica de ecuaciones parametricasFicha tecnica de ecuaciones parametricas
Ficha tecnica de ecuaciones parametricas
 
Tabla centroide-momento-inercia
Tabla centroide-momento-inerciaTabla centroide-momento-inercia
Tabla centroide-momento-inercia
 
Definición de una curva plana
Definición de una curva planaDefinición de una curva plana
Definición de una curva plana
 
Unidad 2 y 3 calculo vectorial
Unidad 2  y 3 calculo vectorialUnidad 2  y 3 calculo vectorial
Unidad 2 y 3 calculo vectorial
 
Transformación de coordenadas bryan rojas ci 28714767 seccion 2 a
Transformación de coordenadas bryan rojas ci 28714767 seccion 2 aTransformación de coordenadas bryan rojas ci 28714767 seccion 2 a
Transformación de coordenadas bryan rojas ci 28714767 seccion 2 a
 
Centroides integracion
Centroides integracionCentroides integracion
Centroides integracion
 

Similar to 3 d2005 apt02_-_capitulo_ii_transformaciones(preliminar)

Graficacion unidad ii_2_2_al_2_7
Graficacion unidad ii_2_2_al_2_7Graficacion unidad ii_2_2_al_2_7
Graficacion unidad ii_2_2_al_2_7Zadaiiyy Collen
 
Transformación de coordenadas
Transformación de coordenadasTransformación de coordenadas
Transformación de coordenadasjuanbermudez82
 
Transformación de coordenadas alexandra camargo
Transformación de coordenadas alexandra camargoTransformación de coordenadas alexandra camargo
Transformación de coordenadas alexandra camargossuser79c1271
 
Trasnformacion de Coordenadas
Trasnformacion de Coordenadas Trasnformacion de Coordenadas
Trasnformacion de Coordenadas Cristian786036
 
Parametrizando la epicicloide
Parametrizando la epicicloideParametrizando la epicicloide
Parametrizando la epicicloidegonzaaas
 
Actividad #4 geometria anaitica anabel beltrán
Actividad #4 geometria anaitica anabel beltránActividad #4 geometria anaitica anabel beltrán
Actividad #4 geometria anaitica anabel beltránAnabelBeltrn
 
Semana 1 Cálculo diferencial e integral.pptx
Semana 1 Cálculo diferencial e integral.pptxSemana 1 Cálculo diferencial e integral.pptx
Semana 1 Cálculo diferencial e integral.pptxVictorMontalvo14
 
Presentacion Matrices
Presentacion MatricesPresentacion Matrices
Presentacion Matricesjmorenotito
 
Presentacion Matrices
Presentacion MatricesPresentacion Matrices
Presentacion Matricesjmorenotito
 
Coordenadas polares y gráficas polares
Coordenadas polares y gráficas polaresCoordenadas polares y gráficas polares
Coordenadas polares y gráficas polaresIván Ordiozola
 
Funciones de varias variables
Funciones de varias variablesFunciones de varias variables
Funciones de varias variablesRicardoAzocar3
 
Actividad #4 geometría analítica anabel beltrán
Actividad #4 geometría analítica anabel beltránActividad #4 geometría analítica anabel beltrán
Actividad #4 geometría analítica anabel beltránAnabelBeltrn
 
Sistemas de coordenadas
Sistemas de coordenadasSistemas de coordenadas
Sistemas de coordenadasrosalinameza
 

Similar to 3 d2005 apt02_-_capitulo_ii_transformaciones(preliminar) (20)

Graficacion unidad ii_2_2_al_2_7
Graficacion unidad ii_2_2_al_2_7Graficacion unidad ii_2_2_al_2_7
Graficacion unidad ii_2_2_al_2_7
 
Robotica Guia 3
Robotica Guia 3Robotica Guia 3
Robotica Guia 3
 
Transformación de coordenadas
Transformación de coordenadasTransformación de coordenadas
Transformación de coordenadas
 
Robotica Guia 3
Robotica Guia 3Robotica Guia 3
Robotica Guia 3
 
Transformación de coordenadas alexandra camargo
Transformación de coordenadas alexandra camargoTransformación de coordenadas alexandra camargo
Transformación de coordenadas alexandra camargo
 
Trasnformacion de Coordenadas
Trasnformacion de Coordenadas Trasnformacion de Coordenadas
Trasnformacion de Coordenadas
 
Parametrizando la epicicloide
Parametrizando la epicicloideParametrizando la epicicloide
Parametrizando la epicicloide
 
ecuaciones parametricas
ecuaciones parametricasecuaciones parametricas
ecuaciones parametricas
 
Actividad #4 geometria anaitica anabel beltrán
Actividad #4 geometria anaitica anabel beltránActividad #4 geometria anaitica anabel beltrán
Actividad #4 geometria anaitica anabel beltrán
 
Semana 1 Cálculo diferencial e integral.pptx
Semana 1 Cálculo diferencial e integral.pptxSemana 1 Cálculo diferencial e integral.pptx
Semana 1 Cálculo diferencial e integral.pptx
 
Presentacion Matrices
Presentacion MatricesPresentacion Matrices
Presentacion Matrices
 
Presentacion Matrices
Presentacion MatricesPresentacion Matrices
Presentacion Matrices
 
Coordenadas polares y gráficas polares
Coordenadas polares y gráficas polaresCoordenadas polares y gráficas polares
Coordenadas polares y gráficas polares
 
Funciones de varias variables
Funciones de varias variablesFunciones de varias variables
Funciones de varias variables
 
Unidad 8
Unidad 8Unidad 8
Unidad 8
 
Dinamica movimiento 3D
Dinamica movimiento 3DDinamica movimiento 3D
Dinamica movimiento 3D
 
Actividad #4 geometría analítica anabel beltrán
Actividad #4 geometría analítica anabel beltránActividad #4 geometría analítica anabel beltrán
Actividad #4 geometría analítica anabel beltrán
 
ECUACIÓN DE LA RECTA
ECUACIÓN DE LA RECTAECUACIÓN DE LA RECTA
ECUACIÓN DE LA RECTA
 
Sistema de coordenadas
Sistema de coordenadasSistema de coordenadas
Sistema de coordenadas
 
Sistemas de coordenadas
Sistemas de coordenadasSistemas de coordenadas
Sistemas de coordenadas
 

3 d2005 apt02_-_capitulo_ii_transformaciones(preliminar)

  • 1. 2 Transformaciones en 3D La manera más fácil de conseguir las transformaciones básicas (traslación, rotación, escalación, en general las transformaciones afines) es utilizando matrices de transformación. Con ligeros cambios a las matrices, se pueden combinar para conseguir que una sola matriz resultante nos sirva para varias de estas transformaciones. El utilizar coordenadas homogéneas nos ayudará a obtener este efecto. Comenzaremos explicando cómo se utilizan para conseguir transformaciones en 2 dimensiones y, posteriormente, veremos las transformaciones en 3 dimensiones. 2.1 Coordenadas homogéneas1 Nos será útil sustituír las coordenadas (x, y) por las coordenadas (xh, yh, h), llamadas coordenadas homogéneas, donde x = xh/h, y = yh/h (2.1) de donde (xh, yh, h) = (h . x, h . y, h) (2.2) Existe un número finito de representaciones homogéneas equivalentes para cada punto de coordenadas (x, y) seleccionando un valor no cero para h. Por conveniencia, escogeremos h = 1, con lo que cada posición bidimensional se representará con las coordenadas homogéneas (x, y, 1). Expresar posiciones en coordenadas homogéneas nos permite representar todas las ecuaciones de transformación geométrica como multiplicaciones de matriz. Se representan las coordenadas con vectores de columna de 3 elementos y las operaciones de transformación se expresan como matrices de 3 por 3. Para la traslación de un punto (x, y, 1) una distancia tx en x y una distancia ty en y, obtenemos: x' y’ 1 = 1 0 tx 0 1 ty 0 0 1 . x y 1 (2.3) 2.2 Transformaciones compuestas Esta representación nos permite “combinar” varias transformaciones en una, multiplicando las diferentes matrices de transformación, por ejemplo, el efecto de trasladar un objeto cierta distancia T (tx1, ty1), girarlo un cierto ángulo R(θ) y volverlo a 1 En matemáticas, se utiliza el término coordenadas homogéneas para referirse al efecto de esta representación de ecuaciones cartesianas. Cuando se convierte un punto cartesiano (x, y) a una representación homogénea (xh, yh, h) las ecuaciones que contienen x, y se convierten en ecuaciones homogéneas de tres parámetros xh, yh y h. Esto significa que si se sustituye cada uno de los 3 parámetros con cualquier valor v veces ese parámetro, el valor v se puede factorizar fuera de las ecuaciones.
  • 2. trasladar a su posición inicial T2 (-tx1, -ty1), se consigue multiplicando cada uno de sus puntos P (x, y, 1) de la manera siguiente: P’ = T . R . T2 . P (2.4) donde P’ es el vector columna que representará al punto resultante y T, R y T2 son las matrices de transformación correspondientes T = 1 0 tx 0 1 ty 0 0 1 R = cos θ - sen θ 0 sen θ cos θ 0 0 0 1 T2 = 1 0 -tx 0 1 -ty 0 0 1 (2.5) Lo que sería lo mismo que multiplicar al punto P por la matriz M obtenida el combinar las tres matrices M = T2 . R . T (2.6) M = cos θ -sen θ tx(1 – cos θ) + ty sen θ sen θ cos θ ty (1 – cos θ) – tx sen θ 0 0 1 (2.7) 2.3 Matrices de transformación en 3D más comunes 2.3.1 Traslación En la representación homogénea tridimensional de las coordenadas, se traslada un punto de la posición P = (x, y, z) a la posición P’ = (x’, y’, z’) con la operación de matriz P’ = T x P (2.8) donde P y P’ son vectores columna como matrices, la matriz T = 1 0 0 tx 0 1 0 ty 0 0 1 tz 0 0 0 1 y tx, ty y tz especifican las distancias de traslación en x, y y z x’ = x + tx y’ = y + ty z’ = z + tz 2.3.2 Rotación Para generar una transformación de rotación, debemos designar un eje de rotación respecto del cual girará el objeto, y la cantidad de rotación angular, es decir, un ángulo (θ).
  • 3. Una rotación tridimensional se puede especificar alrededor de cualquier línea en el espacio. Los ejes de rotación más fáciles de manejar son aquellos paralelos a los ejes de coordenadas. Los ángulos de rotación positiva producen giros en el sentido opuesto a las manecillas del reloj con respecto al eje de una coordenada, si el observador se encuentra viendo a lo largo de la mitad positiva del eje hacia el origen de coordenadas. La matriz de rotación respecto al eje z se especifica como (3.11) Rz = cos θ -sen θ 0 0 sen θ cos θ 0 0 0 0 1 0 0 0 0 1 La matriz de rotación respecto al eje x se especifica como (3.12) Rx = 1 0 0 0 0 cos θ -sen θ 0 0 sen θ cos θ 0 0 0 0 1 Y la matriz de rotación respecto al eje y se especifica como (3.13) Ry = cos θ 0 sen θ 0 0 1 0 0 -sen θ 0 cos θ 0 0 0 0 1 Se forma una matriz de rotación inversa al sustituír el ángulo de rotación θ por –θ. Los valores negativos para los ángulos de rotación generan rotaciones en una dirección en el sentido del reloj, de modo que se produce la matriz identidad cuando se multiplica cualquier matriz de rotación por su inverso2 . 2.3.2.1 Rotaciones tridimensionales generales Es posible establecer una matriz de rotación para cualquier eje que no coincide con un eje de coordenadas como una transformación compuesta que implica combinaciones de traslaciones y rotaciones de los ejes de coordenadas. Primero se desplaza el eje de rotación seleccionado a uno de los ejes de coordenadas, después se establece la matriz de rotación con respecto del eje de coordenadas para el ángulo de rotación específico y por último se obtiene la secuencia de transformación inversa para regresar al eje de rotación a su posición original. (ejercicio pag. 435-440) 2 Puesto que sólo se afecta la función de seno cuando se cambia el signo del ángulo de rotación, se puede obtener también la matriz inversa al intercambiar renglones y columnas. Es decir que podemos calcular el inverso de cualquier matriz de rotación R al evaluar su transpuesta (R-1 = RT ). Este método para obtener una matriz inversa se aplica también para cualquier matriz de rotación compuesta.
  • 4. 2.3.2.2 Propiedad de las matrices de rotación Dada la matriz de rotación en 2D R(θ) = cos θ -sin θ 0 sin θ cos θ 0 0 0 1 Considérense los primeros dos renglones de la submatriz superior izquierda de 2 x 2 como vectores. Se obtiene: A = cos θ i – sin θ j B = sin θ i + cos θ j Puede mostrarse que estos vectores tienen 3 propiedades: 1. Cada uno es un vector unitario. 2. Cada uno es perpendicular al otro (su producto punto es cero). 3. El primero y segundo vectores pueden rotarse con R(θ) y quedarán en el eje x positivo y y positivo, respectivamente (esto equivale a que el determinante sea uno). Estas propiedades también son válidas para las columnas de la submatriz de 2x2. Las 2 direcciones son aquellas en las que los vectores en el eje x y y son rotados. Una matriz con estas propiedades se llama especial ortogonal. Las 3 propiedades se extienden a las matrices de rotación en 3D que vimos anteriormente. Retomemos el ejemplo anterior. La matriz resultante que obtuvimos después de multiplicar las matrices de transformación y las rotaciones en los 3 ejes, se puede obtener directamente si pensamos en una matriz de rotación general como R = r1x r2x r3x r1y r2y r3y r1z r2z r3z Donde cada uno de los renglones es un vector ortogonal a los otros dos. Todo lo que tenemos que hacer es “asignar” cada uno de estos “ejes” a la figura (ejes que, después de la transformación, quedarán sobre los ejes x, y y z). Por ejemplo, Rz es el vector unitario sobre R1R2 que rotará al eje positivo de la z. Rz = [r1z r2z r3z]T = P1P2 / |P1P2| El vector unitario Rx es perpendicular al plano de P1, P2, y P3 y rotará al eje positivo de las x, así que Rx debe ser el producto cruz normalizado de 2 vectores en el plano: Rz = [r1x r2x r3x]T = P1P3 x P1P2 / |P1P3 x P1P2|
  • 5. Finalmente, Ry = [r1y r2y r3y]T = Rz x Rx Rotará al eje positivo de las y. La matriz compuesta está dada por r1x r2x r3x 0 r1y r2y r3y 0 r1z r2z r3z 0 0 0 0 1 . T(-x1, -y1, -z1) = R . T 2.3.3 Escalación La matriz para la transformación de escalación de una posición P = (x, y, z) con respecto del origen de las coordenadas se puede escribir como (3.14) S = ex 0 0 0 0 ey 0 0 0 0 ez 0 0 0 0 1 Donde ex, ey, y ez pueden tener cualquier valor positivo (valores de escalación en cada uno de los ejes, si estos no son iguales, se cambian las dimensiones relativas en el objeto). La escalación con respecto a una posición fija seleccionada se puede obtener con la siguiente secuencia de transformación: 1. Se traslada el punto fijo al origen. 2. Se escala el objeto con respecto al origen. 3. Se traslada el punto fijo a su posición original. 2.3.4 Sesgo 2.4 Otras transformaciones 2.4.1 Reflexiones Las matrices de reflexión tridimensional se establecen de manera similar a aquellas para dos dimensiones. Las reflexiones con respecto a un eje dado son equivalentes a rotaciones de 180º sobre ese eje. Las reflexiones con respecto de un plano equivalen a rotaciones de 180º en un espacio cuatridimensional3 . 3 Cuando el plano de reflexión es un plano de coordenadas (xy, xz o yz) podemos considerar la transformación como una conversión dentre los sistemas de lado izquierdo y lado derecho.
  • 6. Por ejemplo, para obtener una reflexión con respecto del plano xy (cambio de sistema de lado derecho a lado izquierdo), cambiando el signo de las coordenadas de z sin alterar las coordenadas x y y, se utiliza la siguiente matriz de transformación: RFz = 1 0 0 0 0 1 0 0 0 0 -1 0 0 0 0 1 Las matrices de reflexión para invertir x y y se definen de manera similar. Es posible efectuar las reflexiones con respecto de otros planos como una combinación de rotaciones y reflexiones del plano de las coordenadas. 2.4.2 Recortes Las transformaciones de recorte se pueden utilizar para modificar las formas de los objetos, también son útiles para obtener transformaciones de proyección general. Por ejemplo, la siguiente transformación produce un recorte del eje de las z: SHz = 1 0 a 0 0 1 b 0 0 0 1 0 0 0 0 1 Asignando cualquier valor real a a y b. El efecto es la alteración de los valores de las coordenadas de x y y en una cantidad proporcional al valor de z, mientras que z permanece sin cambios. 2.5 Transformaciones compuestas Se realiza una transformación tridimensional compuesta al multiplicar las representaciones matriciales para las operaciones individuales en la secuencia de transformación. Esta concatenación se lleva a cabo de derecha a izquierda, donde la matriz del extremo derecho es la primera transformación que se aplica a un objeto y la matriz del extremo izquierdo es la última transformación. (Lean 11.7 further: Foley 5?) (final, ya cuando hayan entendido los conceptos, decirles que es mucho más fácil manejar ejes de coordenadas dentro de cada uno de los objetos que estarlos llevando al origen para cada transformación: CAMBIO DE COORDENADAS) 2.7 Cambio de sistemas de coordenadas Cuando se manejan varios objetos al mismo tiempo, una manera alternativa de manejar las transformaciones es pensar que cada objeto tiene su propio sistema de coordenadas.
  • 7. Para lograr este enfoque es necesario pensar en una manera de transformar las coordenadas de cada sistema al sistema normal. Se define Mi<-j como la transformación que convierte la representación de un punto en el sistema de coordenadas j a su representación en el sistema de coordenadas i. Definiendo P(i) como la representación de un punto en el sistema de coordenadas i, P(j) como la representación del punto en el sistema j, y P(k) como la representación del punto en el sistema de coordenadas k, entonces P/i) = Mi<-j . P(j) y P/j) = Mj<-jçk . P(k) Sustituyendo, obtenemos que