>> Transformación << Transformaciones 3D

Slides:



Advertisements
Presentaciones similares
>> Transformación << Transformaciones 3D
Advertisements

Propiedad Intelectual Cpech PPTCAC042MT21-A16V1 Plano y espacio Propiedad Intelectual Cpech ACOMPAÑAMIENTO ANUAL BLOQUE 21.
Ver VIDEO Aquí.
APLICAS FUNCIONES ESPECIALES Y TRANSFORMACIONES DE GRÁFICAS PROFESORA: XÓCHITL ARIANDA RUIZ ARMENTA MATEMÁTICAS 4 4TO SEMESTRE ENERO 2015 MULTIVERSIDAD.
PROFESORAS: ISABEL LÓPEZ C. LORENA SALINAS LORENA SALINAS PÍA AZOCAR PÍA AZOCAR.
VECTORES UNIDAD IV: VECTORES N.SN J. Pomales CeL CONCEPTOS BÁSICOS.
Representación Matricial Francisco Alejandro Torres Ortiz Irving Alexis Martínez Mérida.
Geometría Analítica LA ELIPSE DEFINICIÓN ELIPSES A NUESTRO ALREDEDOR
Transformaciones Isométricas
Geometría Espacial II.
Tema 0 Álgebra vectorial.
Transformaciones Isométricas
DESIGUALDADES CON VALOR ABSOLUTO
Transformación del tensor de esfuerzos
Tema 9: Posiciones relativas
BUCLES Realizan de forma rápida cálculos repetitivos dentro de código.
FUNCIONES, PROCESAMIENTO ELEMENTAL DE DATOS
Ecuación de la recta Prof. Lucy Vera V. NM3.
VECTORES.
Tarea 2. MATEMATICAS I FUNCIONES, PROCESAMIENTO ELEMENTAL DE DATOS
ÓPTICA.
CLASE Nº 8 TORQUE.
FUNCIONES, PROCESAMIENTO ELEMENTAL DE DATOS
Unidad 4 Anexo 3. Capítulo X. Ecuación de Euler.
Estructuras de Datos Recursividad.
MATRICES.
TRANSFORMACIONES ISOMETRICAS DEL PLANO
CAPÍTULO 9: DETECCIÓN DE LÍNEAS
TORQUE O MOMENTO DE TORSION
RECTAS Y PLANOS EN EL ESPACIO
LA DERIVADA Autor: Victor Manuel Castro González
Transformaciones Isométricas
Unidad 6. Capítulo IV. Puntos ordinarios y puntos singulares.
Geometría Analítica.
VECTORES Juan Daniel Fregoso Rubio B.
EXAMENES LOGSE Septiembre
NM3 1.5 MOMENTUM ANGULAR.
Sistema de Referencia sistema de coordenadas cartesiano o
Facultad de Contaduría y Administración
Simetrías, Traslaciones y Rotaciones
Homología Definición Dos figuras planas son homográficas cuando se corresponden punto a punto y recta a recta de modo que a cada punto y recta de una.
Módulo: I Unidad: II Semana: 2 Ing MAXIMO HUAMBACHANO MARTEL
TRANSFORMACIONES ISOMÉTRICAS
DOCENTE: ANGEL PALACIO BIENVENIDOS AL MUNDO DEL
Vectores en el espacio 2º Bachillerato
EL MOVIMIENTO CRICULAR
H a A B E D C Área del ROMBO. Con los datos que observas en la figura determinar el área del TRAPECIO.
EXAMENES PAU JULIO Fase Especifica
EXAMENES PAU- SEPTIEMBRE 2010
DEL MANIPULADOR: PARTE 1 Roger Miranda Colorado
COLEGIO NACIONAL LOPERENA Germán Isaac Sosa Montenegro
Sea la ecuación diferencial lineal de orden “n” y de coeficientes variables
POLINOMIOS p(x) = p0 + p1x + p2x2 + p3x3 + … + pnxn pn ≠ 0
CINEMÁTICA DEL SÓLIDO RÍGIDO.
Sra. Anlinés Sánchez Otero
TRANSFORMACIONES ISOMÉTRICAS En una transformación isométrica:
CINEMATICA DIRECTA DEL ROBOT
Rotación de figuras en el plano cartesiano
DEPARTAMENTO DE MATEMÁTICAS
Vectores fijos en el plano Vector fijo: Es un segmento orientado, con el sentido del recorrido que va desde el origen al extremo. A B Extremo Origen.
Tiro Parabólico Supongamos que se dispara un proyectil, con velocidad inicial v0, desde una altura h, formando un ángulo  con la horizontal. Se pretende.
Formas de la Ecuación de la Recta
ANGULO DE EULER Puede demostrarse que cualquier rotación de un sólido puede expresarse como la composición de tres rotaciones elementales alrededor de.
PLANOS Y RECTAS EN EL ESPACIO.
Unidad 4 Anexo 2. Capítulo IV
EXAMENES PAU 2005.
TEMARIO DEFINICIÓN ………………………………………………………..………..
CINEMÁTICA Movimiento Rectilíneo Uniforme (MRU)
TRANSFORMACIONES En una transformación isométrica: 1) No se altera la forma ni el tamaño de la figura. 2) Sólo cambia la posición (orientación o sentido.
GEOMETRÍA EN EL ESPACIO
Transcripción de la presentación:

>> Transformación << Transformaciones 3D LINK http://www.sc.ehu.es/ccwgamoa/docencia/Material/Presentaciones Trfm.3D A. García-Alonso

Contenido Transformaciones (Foley 5, Hearn 11) Coordenadas homogéneas Traslación de un cuerpo Escalado con pívot en el origen Oblicua (shear) Rotación de un cuerpo sobre un eje coordenado Transformaciones y topología Coordenadas homogéneas Matrices de transformación Composición de transformaciones. Ejemplos Álgebra : matriz cambio de base, quaternion Gestión trfm. 3D en OpenGL Trfm.3D A. García-Alonso

Posicionar estas coordenadas, componentes, ¿en qué sistema de referencia están expresadas? S.R. Mundo y Modelo Cortesia de Autodesk, ESRI Trfm.3D A. García-Alonso

Posicionar Camara Posicionar la cámara en el mundo Objetivo: conocidas las coordenadas de un punto en el SR Mundo, calcular sus coordenadas en el SR de la Cámara S.R. Mundo y Camara Cortesia de Autodesk Trfm.3D A. García-Alonso

¿Dónde está la Cámara? Datos : Coordenadas 3D de puntos expresadas en el SR Mundo Coordenadas 2D de esos puntos en la imagen vista por la cámara S.R. Mundo y Camara Cortesia de Autodesk Trfm.3D A. García-Alonso

xxxx Entry Trfm.3D A. García-Alonso

Traslación de un cuerpo Entry Level Graphics Course Curriculum Western Michigan University Jason_a.cavanaugh@wmich.edu http://grog.lab2.cc.wmich.edu/atkins/section52.htm Trfm.3D A. García-Alonso

Descripción de la traslación La traslación se define mediante un vector t Todo punto P perteneciente al cuerpo trasladado pasa a una posición P’ determinada por el vector de traslación t Sea un punto P de coordenadas (x, y, z) deseamos calcular sus nuevas coordenadas (x’, y’, z’) tras sufrir una traslación t (tx, ty, tz) : En la figura aparece en la izquierda el objeto en la posición original. En la derecha aparece el objeto –en el mismo sistema de referencia-, pero en la nueva posición generada a través de la transformación de las coordenadas de sus vértices. x’ = x + tx y’ = y + ty z’ = z + tz t P P’ Traslación de un punto y z x Trfm.3D A. García-Alonso ver nota

Escalado Escalado homogéneo en los tres ejes, con pívot (centro) de escalado en el origen En la figura de la izquierda aparecen dos vistas distintas del mismo objeto en la situación original. En la derecha aparece el objeto –en el mismo sistema de referencia, y en las mismas vistas-, pero en la nueva posición generada a través de la transformación de las coordenadas de sus vértices. Trfm.3D A. García-Alonso ver nota

... El escalado se puede realizar respecto de cualquier pívot . En este caso se ha elegido el centro del cubo que envuelve al sólido Obsérvese que la proyección isométrica del objeto transformado (superior derecha) es idéntica a la vista en la transparencia anterior, sin embargo en la vista inferior se observa cómo el pívot de esta transformación está en el centro del cubo envolvente del objeto.. Trfm.3D A. García-Alonso ver nota

... Escalado no homogéneo: en cada eje se utiliza un coeficiente de escalado distinto. Trfm.3D A. García-Alonso

Cálculo del escalado El escalado se define mediante factores de escala Escalado homogéneo : un único factor s  , s > 0 s > 1 aumenta el tamaño s < 1 disminuye Escalado heterogéneo : factores de escalado en cada eje coordenado : sx, sy, sz El escalado homogéneo es el más habitual Si consideramos como pívot el origen de coordenadas Sea un punto P de coordenadas (x, y, z), deseamos calcular sus nuevas coordenadas (x’, y’, z’) x’ = sx · x y’ = sy · y z’ = sz · z Trfm.3D A. García-Alonso

Oblicua (shear) x’ = shx · x y’ = y z’ = z x’ = x y’ = shy · y z’ = z z’ = shz · z x y z x’ = shx · x y’ = y z’ = shz · z Trfm.3D A. García-Alonso

Rotación sobre un eje coordenado Entry Level Graphics Course Curriculum Western Michigan University Jason_a.cavanaugh@wmich.edu http://grog.lab2.cc.wmich.edu/atkins/section52.htm Trfm.3D A. García-Alonso

Descripción de la rotación La rotación puede ser sobre cualquier eje Una rotación se define mediante (O, r ) Un punto del eje Un vector que determina la dirección y sentido del eje El sentido positivo de giro de un eje lo determina la regla de la mano derecha o del sacacorchos http://www.cac.psu.edu/dept/cac/publications/web/ publications/cacguide/viz/sem_notes/3d_fundamentals Trfm.3D A. García-Alonso

... Signo o sentido de la rotación Trfm.3D A. García-Alonso

... Todo punto P perteneciente al cuerpo girado pasa a una posición P’ por rotación de un ángulo β sobre (Q, j) La figura supone que β es positivo De modo similar se presentan las rotaciones positivas (O, i), (O, k) y z x β j : (0,1,0) Q P α i U’ U y z x y z x P’ Trfm.3D A. García-Alonso

Giro  Coordenada polar Distinguir Rotación (no usa origen de referencia) Coordenada polar (requiere referencia) x y z θ P P’ Rotación x y z θ P Coordenada polar referida al eje z Trfm.3D A. García-Alonso

Cálculo : rotación de un punto (eje y) Sea un punto P de coordenadas (x, y, z) deseamos calcular sus nuevas coordenadas (x’, y’, z’) tras girar un ángulo β alrededor del eje y P’ estará contenido en un plano perpendicular a j que pasa por P Resolveremos el problema en ese plano x y z β P P’ Rotación de un punto sobre el eje y Trfm.3D A. García-Alonso

Similarmente, y sustituyendo lo anterior, se obtiene: β P P’ α y x z x’ = z sin β + x cos β y’ = y z’ = z cos β – x sin β Usando dos parámetros auxiliares : α y d (distancia de P al eje y), se puede expresar : x = d sin α z = d cos α Similarmente, y sustituyendo lo anterior, se obtiene: x’ = d sin (α + β ) = d ( cos α sin β + sin α cos β ) = z sin β + x cos β y’ = y z’ = d cos (α + β ) = d (cos α cos β – sin α sin β ) = z cos β – x sin β Que se puede expresar matricialmente : x´ cos β 0 sin β x y´ 0 1 0 y z´ -sin β 0 cos β z Trfm.3D A. García-Alonso

Transformaciones y topología Se puede observar que las relaciones topológicas entre vértices, aristas y caras no varían en ninguna de las transformaciones estudiadas Tampoco varían sus ángulos relativos, excepto en el caso de escalado no homogéneo Trfm.3D A. García-Alonso

Coordenadas homogéneas Utilizaremos coordenadas homogéneas (Burgos 11.8) Con una única estructura de datos se describen todas las transformaciones : matrices M44 Permite componer una sucesión de transformaciones en una única matriz No toda M44 representa una transformación geométrica válida Lo habitual será considerar la unidad en la cuarta coordenada (la homogénea) x´ a11 a12 a13 a14 x y´ a21 a22 a23 a24 y z´ a31 a32 a33 a34 z 1 0 0 0 1 1 Trfm.3D A. García-Alonso

Matriz de traslación Expresaremos ahora la translación de un punto usando coordenadas homogéneas x´ 1 0 0 tx x y´ 0 1 0 ty y z´ 0 0 1 tz z 1 0 0 0 1 1 Trfm.3D A. García-Alonso

Matrices de rotación sobre ejes coord. x´ 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 Trfm.3D A. García-Alonso

Oblicua en xy (z invariante) ... x´ sx 0 0 0 x y´ 0 sy 0 0 y z´ 0 0 sz 0 z 1 0 0 0 1 1 Escalado 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 Trfm.3D A. García-Alonso

Matrices inversas 1 0 0 tx 1 0 0 -tx 0 1 0 ty 0 1 0 -ty 0 0 1 tz 0 0 0 1 MT = 1 0 0 -tx 0 1 0 -ty 0 0 1 -tz 0 0 0 1 MT–1 = sx 0 0 0 0 sy 0 0 0 0 sz 0 0 0 0 1 MS = Modo de evaluar las transformaciones inversas : Usar los métodos matriciales habituales Razonamiento geométrico : a) La translación inversa a (tx, ty, tz) es (-tx, -ty, -tz) b) La rotación inversa a θ es -θ y como [cos -θ = cos θ ; sin -θ = -sin θ] ... c) El escalado inverso a s es 1/s 1/sx 0 0 0 0 1/sy 0 0 0 0 1/sz 0 0 0 0 1 MS–1 = Trfm.3D A. García-Alonso ver nota

... 1 0 0 0 0 cos θ -sin θ 0 0 sin θ cos θ 0 0 0 0 1 MRx = 1 0 0 0 1 0 0 0 0 cos θ -sin θ 0 0 sin θ cos θ 0 0 0 0 1 MRx = 1 0 0 0 0 cos θ sin θ 0 0 -sin θ cos θ 0 0 0 0 1 MRx–1 = cos θ 0 sin θ 0 0 1 0 0 -sin θ 0 cos θ 0 0 0 0 1 MRy = cos θ 0 -sin θ 0 0 1 0 0 sin θ 0 cos θ 0 0 0 0 1 MRy–1 = cos θ -sin θ 0 0 sin θ cos θ 0 0 0 0 1 0 0 0 0 1 MRz = cos θ sin θ 0 0 -sin θ cos θ 0 0 0 0 1 0 0 0 0 1 MRz–1 = Trfm.3D A. García-Alonso

Composición de transformaciones Apliquemos una transformación : P´ = MT1 · P Apliquemos otra : P´´ = MT2 · P´ = MT2 · MT1 · P  La matriz que acumula ambas transformaciones será M = MT2 · MT1 En general : M = MTn · ... · MT3 · MT2 · MT1 Trfm.3D A. García-Alonso

No conmutativa La composición de transformaciones no es conmutativa Trfm.3D A. García-Alonso

Ejemplo : transformar vector ligado Problema : dados dos vectores ligados encontrar la transformación que “lleva” a uno sobre el otro Sean dos vectores ligados especificados mediante su punto origen y su vector. Los denominaremos móvil (Am , vm ) y fijo (Af , vf ) Se trata de determinar la matriz de transformación que aplicada a Am obtiene Af y aplicada al punto Am+vm lo transforma situándolo sobre el semieje positivo de vf x y z vm Am vf Af vmt NOTA : se dibuja en negro la recta soporte: Continua por encima del plano xz Discontinua por debajo Trfm.3D A. García-Alonso

... Resolvemos el problema con ambos vectores aplicados en el origen Usaremos coordenadas esféricas (mod, φ, θ) nota * Llevamos vm sobre el plano yz+ mediante rotY(-φm) : vm´ Lo transformamos sobre z+ con rotX(θm) : vm´´ Deshacemos esa rotación con rotX(-θf) Y queda resuelto el problema aplicando rotY(φf) Nota * Cuando vxz se hace cero, es decir, cuando θ= ± π/2, entonces a φ se le puede asignar cualquier valor, pero si esa variable polar está cambiando en el tiempo, entonces conviene conservar el valor que tenía en el estado anterior : φnew = φold x y z vxz vm (vx,vy,vz) vm´ (0,vy,vxz) vm´´ (0,0,|v|) -φm θm vxz=sqrt(vx2+vz2) if( vxz / | v | < ε ) φ = 0 else φ = acos( vz/ vxz ) if( vx < 0 ) φ = - φ x y z vf vm x y z v (vx,vy,vz) θ φ vxz θ = sin( vy / | v | ) Siempre resulta: -π  φ  π -π/2  θ  π/2 Trfm.3D A. García-Alonso ver nota

... El problema completo queda resuelto componiendo también las transformaciones de traslación trans(-Am) rotY(-φm) rotX(θm) rotX(-θf) rotY(φf) trans(Af) Trfm.3D A. García-Alonso

Ejemplo : giro sobre cualquier eje Problema : giro sobre cualquier eje (Hearn 11.9) Sea un eje definido por (Q, r ) Dado P (x, y, z) deseamos conocer sus nuevas coordenadas (x’, y’, z’) tras rotarle un ángulo θ sobre dicho eje El problema se resuelve mediante composición de transformaciones Primero se enuncian las transformaciones Después se determina el cálculo de cada una de ellas Finalmente se explica como evaluar los ángulos requeridos x y z θ Q R O r Trfm.3D A. García-Alonso

Componiendo las siguientes transformaciones queda el problema resuelto x y z Q R r Q’ R’ R´´ R´´´ Traslac. QO Rotac. α en z Rotac. β en x Rotac. θ en y Rotac. -β en x x y z Q R r Q’ R’ R´´ Rotac. - α en z Traslac. -QO Trfm.3D A. García-Alonso

... Solución Sea R tal que R = Q + r Calcular la traslación que lleva Q al origen M1 = MT(-qx, -qy, -qz) Se cumplirá que r´ = M1 · r el resultado verificará que : r´ = r Q´ = M1 · Q Q´ = O (queda sobre el origen) R´ = M1 · R OR´ = r´ = r x y z θ Q R O r x y z Q´ R´ Trfm.3D A. García-Alonso

... Para calcular el ángulo α entre π y πyz tendremos en cuenta : π es el plano que pasa por el eje z, y contiene a r πyz es el plano definido por los ejes y-z Se cumple, por tanto, que O  π r´  π k  π rxy es la proyección ortogonal de r sobre πxy α es el ángulo formado por rxy y j Tener en cuenta el sentido de giro positivo k Calcular M2 = MRz (α) Aplicar M2 a R´ para obtener R´´ R´´ quedará sobre πyz es decir, se verificará que, Rx´´= 0 r´´ quedará paralelo a ese plano, es decir, se verificará que, rx´´= 0 R´´ x y rxy z Q’ R´ α Trfm.3D A. García-Alonso

... Calcular el ángulo β entre r´´ y j Calcular M3 = MRx (β) Tener en cuenta el sentido de giro positivo i Calcular M3 = MRx (β) Si se aplicase M3 (β) a R´´ se obtendría R´´´ R´´´ quedaría situado sobre el eje y x y z Q’ R´´´ R´´ β Trfm.3D A. García-Alonso

... Calcular la matriz de giro M4 = MRy (θ) 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 que resuelve el problema planteado será la que combina todas esas transformaciones M(Q,r) (θ) = M7 · M6 · M5 · M4 · M3 · M2 · M1 No se calcula la expresión algebraica de la matriz M(Q,r) (θ), sino que se crea el código que realiza esos procedimientos Trfm.3D A. García-Alonso

... Cálculo del ángulo α Se proyecta r sobre πxy : rxy (rx, ry, 0) z Q’ R’ α ... Cálculo del ángulo α Se proyecta r sobre πxy : rxy (rx, ry, 0) cos α = j · rxy / | rxy | cos α = ( (0, 1, 0) · (rx, ry, 0) ) / (rx2 + ry2 )1/2 cos α = ry / (rx2 + ry2 )1/2 Como cos (α) = cos (–α) , entonces si rx < 0 entonces el ángulo debe ser (2π- α)  α = - α Nota : Si r es casi paralelo al eje “z”, el denominador (rx2 + ry2 )1/2 se hace casi 0, por tanto si rz> (1- ξ), entonces hay que resolver el problema de otro modo, que es mucho más simple, pues se puede girar directamente el ángulo θ alrededor del eje “z”. α y z x rxy j α = acos ( ry / (rx2 + ry2 )1/2 ) si rx < 0  α = - α Trfm.3D A. García-Alonso ver nota

x y z Q’ R´´´ R´´ β ... Cálculo del ángulo β R´´, y por tanto r´´, ha quedado abatido sobre πyz cos β = j · r´´ / | r´´| cos β = ( (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π- β)  β = - β β r´´ j z x y β = acos ( ry´´ / (ry´´2 + rz´´2 )1/2 ) si rz´´ > 0  β = - β Trfm.3D A. García-Alonso

Matriz inversa Dada una matriz de transformación 3D cualquiera, su inversa se puede calcular por lo métodos habituales del Álgebra de matrices La matriz inversa se puede calcular de modo directo si la transformación se ha construido componiendo Traslaciones Rotaciones sobre ejes Escalado (tanto homogéneo como heterogéneo) Dada una matriz de ese tipo se puede descomponer en un producto de tres matrices (4x4) M = T · R · S Trfm.3D A. García-Alonso

... Se puede comprobar que si Entonces R1 R2 R3 T3x1 01x3 1 M = I3x3 T3x1 01x3 1 T = R1 R2 R3 03x1 |R1| |R2| |R3| 01x3 1 R = |R1| 0 0 0 |R2| 0 03x1 0 0 |R3| 01x3 1 S = Trfm.3D A. García-Alonso

... Por tanto Y las inversas de estas matrices se calculan fácilmente M-1 = (T · R · S)-1 = S-1 · R-1 · T-1 Y las inversas de estas matrices se calculan fácilmente I3x3 -T3x1 01x3 1 T-1= R-1 = RT por ser una matriz de columnas ortonormales 1/ |R1| 0 0 0 1/ |R2| 0 03x1 0 0 1/|R3| 01x3 1 S-1 = Trfm.3D A. García-Alonso

Transformaciones : vectores fila Hasta ahora se han utilizado vectores columna Pero, existen otros modos de gestión, por ejemplo, OpenGL utiliza una versión transpuesta (vectores fila): x´ a11 a12 a13 a14 x y´ a21 a22 a23 a24 y z´ a31 a32 a33 a34 z 1 0 0 0 1 1 // The meaning of the parameters that define the transformation are : // // | r1x r1y r1z 0 | // {x' y' z' 1} = {x y z 1} | r2x r2y r2z 0 | // | r3x r3y r3z 0 | // | tx ty tz 1 | // OpenGL stores transformations in one array : // [r1x r1y r1z 0 r2x r2y r2z 0 r3x r3y r3z 0 tx ty tz 1] // Transformations are composed in the following way : // P1 = P0 * m1 = P0 * M1 // P2 = P1 * m2 = P0 * m1 * m2 = P0 * M2 // P3 = P2 * m3 = P0 * m1 * m2 * m3 = P0 * M3 // In user interfaces, angles are usually in degrees // Within program structures, angles are usually stored in radians // Conversions can be done using the following parameters (see gc.h) : // angle * ANGLE_TO_RAD transforms from degrees into radians // angle * RAD_TO_ANGLE transforms from radians into degrees a11 a21 a31 0 a12 a22 a32 0 a13 a23 a33 0 a14 a24 a34 1 { x’ y’ z’ 1 } { x y z 1 } Trfm.3D A. García-Alonso ver nota

[ r1x r1y r1z 0 r2x r2y r2z 0 r3x r3y r3z 0 tx ty tz 1] ... Todo lo visto es válido, si se tiene en cuenta que hay que transponer la matrices de transformación El modo de componer transformaciones, sigue el orden opuesto al visto, quedando M = MT1 · MT2 · MT3 · ... · MTn OpenGL almacena estas matrices en un vector del siguiente modo [ r1x r1y r1z 0 r2x r2y r2z 0 r3x r3y r3z 0 tx ty tz 1] r1x r1y r1z 0 r2x r2y r2z 0 r3x r3y r3z 0 tx ty tz 1 Trfm.3D A. García-Alonso

Otros ejercicios de composición +++ Cambio de sistema de referencia Calcular la matriz de transformación que, con pívot en P (Px, Py, Pz), realiza un escalado no homogéneo de coeficientes (Sx, Sy, Sz) Pegado de objetos usando caras, aristas y vértices Movimientos relativos Gestión de pilas y composición Transformación de vectores Transformación de planos Trfm.3D A. García-Alonso

Álgebra : matriz cambio de base +++ Trfm.3D A. García-Alonso

Transf. 3D vs. Cambio Sist. Ref. Trfm.3D A. García-Alonso

Quaternion Fundamentos matemáticos (Hearn Anexo 6) q = s + ia + jb + kc ; q =(s, v) q1+q2 = (s1+s2, v1+v2) q1q2 = (s1s2 - v1 · v2 , s1 v2 +s2v1+ s1+v1  v2) |q|2 = s2 + v · v q-1 = (1/|q|2) (s, -v) Uso en rotaciones (Hearn 11.2, al final) Trfm.3D A. García-Alonso

“Clase” trfm3D +++ Trfm.3D A. García-Alonso

Gestión trfm. 3D en OpenGL +++ A. García-Alonso

Animación y transformación 3D +++ Animación 3D Cadena abierta Cadena cerrada Trayectorias Movimiento con restricciones (automóvil, avión) Control Interactivo (grados de libertad) Procedural : ley, comportamiento, agente, etc Definición posición Parámetros para posicionamiento relativo Matriz para cada sólido Trfm.3D A. García-Alonso