Transformações Geométricas 2D Carolina Watanabe Referências Bibliográficas FOLEY, J. D, DAM, A. V.; HUGHES, J. F. Computer Graphics Principle and dpractice, 2 a edição Material elaborado por Marcela X. ribeiro, USFCar.
Roteiro Motivação Transformações Geométricas 2D Translação, Escala e Rotação Representação de Coordenadas Homogêneas e Matrizes de Transformação Composição de Matrizes Outras Transformações Espelhamento e Shearing Transformações Geométricas 3D 2
Transformações Geométricas Por que são necessárias? Animação: mover os objetos; Transformar descrições de objetos entre diferentes sistemas de coordenadas; d Posicionar objetos em relação ao sistema de coordenadas global; TGs fundamentais: translação, rotação, escala. 3
Transformações aplicadas somente nos vértices! Transformações 2D Translação translação P (, ) P'( ', ') ' ' d d ' P, P', ' T d d Translações não alteram geometria do objeto! (nem distâncias, nem ângulos) P' P T Eemplo lousa 4
Transformações 2D Escala escala P( (, ) P '( ', ') A operação de escala é feita em relação origem! Quando fator de escala maior que, aumenta objeto e o distância da origem; ' s ', s Quando fator de escala entre e, diminui objeto e aproima da origem. ' ' s s S(/2,/4) P' S P Eemplo lousa 5
P Transformações 2D Rotação r r P = r cos r cos ( + ) e = r sin Eq. r cos =rcos( ) =rcos cos - rsen sen = r sen ( ) = r sen cos + r sin cos Eq.2 substituindo Eq. em Eq.2, obtemos então: =. cos () -. sen (), =. sen () +. cos () 6
Transformações 2D Rotação (em relação à Origem) P rotação ( ) P' A operação de rotação é feita em relação origem! ' cos sen ' sen cos ' ' cos sen sen cos R ( 45 ) P' R P Ob  l iti t ã tid ti h ái Obs: Ângulos positivos: rotação sentido anti-horário Ângulos negativos: rotação sentido horário 7
Transformações 2D Rotação Eemplo: Na figura rotacionamos o ponto (6,) em 3 graus em torno de (,). ) P (4.7, 3.9) 3 o P(6) (6,) 8
Cisalhamento (shearing) S H a Cisalhamento na direção de esticado com um incremento proporcional a 9
Refleão Refleão e (através do eio ): Esp
Coordenadas Homogêneas As operações rotação e escala são efetuadas através de operações de multiplicação de matriz, mas a de translação é feita através de soma: A tripla (,,w) é chamada de coordenadas P = T+P P =S. P cartesianas do ponto homogêneo. P = R. P w=, não é permitido É possível colocar todas as operações para serem eecutadas como uma multiplicação de matriz usando coordenadas homogêneas, para isso: Epande-se as matrizes 22 por matrizes 33; Cada ponto passa a ser representado por uma tripla (,,w); Um conjunto de coordenadas (,, w) representam o mesmo ponto se forem múltiplos; Se normalizamos o ponto por w temos (/w, /w,), onde /w,/w são as coordenadas cartesianas do ponto homogêneo.
Coordenadas Homogêneas Ponto (,,w) projetado em w= Coordenadas do mesmo ponto 2D, correspondem a uma reta no espaço 3D (,,w), e para w =...os pontos, estão no plano 2
Matrizes Transformação 2D Propriedades especiais Uma seqüência arbitrária de rotação e translação preserva ângulos e medidas transformação de corpo rígido. ' r r2 t ' r2 r22 t Uma seqüência arbitrária de rotação, escala e translação, preserva somente paralelismo entre linhas transformação afim. 3
Eercício Como fazer a transformação inversa de: (a) translação T(d,d) (b) escala E(s,s) (c) rotação R( Uma matriz quadrada admite inversa se seu determinante é diferente de zero. Assim as matrizes de transformações T, E, R admitem inversa! Matriz Ortogonal: A inversa de uma matriz ortogonal é igual a transposta M - M T Matriz de rotação: Ortogonal Especial com determinante : 4
Composição de Transformações Ao invés de aplicar uma transformação por vez nos pontos de um objeto, é mais rápido calcular uma matriz resultante da composição de transformações, e depois multiplicar essa matriz para cada ponto do objeto. Eemplo: A rotação de um objeto de um ângulo sobre um ponto arbitrário P P P P P P = M. P t cos sen t M t sen cos t Atenção na ordem, multiplicações de matriz não são comutativas 5
Composição: translação Duas translações sucessivas (t,t ) e (t 2,t 2 ): P = T(t 2,t 2 )T(t,t ) P {T(t t ) T(t t )} P Calcule a matriz produto e ifi = {T(t 2,t 2 ) T(t,t )} P verifique... A matriz composta de transformação para esse caso é: 2 2 2 2 t t t t t t t t 2 2 6 Translações são aditivas!
Composição: Rotação Duas rotações sucessivas ( e 2 ) P = R( 2 ){R( ) P} Calcule a matriz produto e = {R( 2 ) R( )} P verifique... A matriz composta de transformação para esse caso é: cos sen cos 2 sen 2 cos( 2) sen( 2) sen cos sen 2 cos 2 sen( 2) cos( 2) Rotações são aditivas! 7
Composição: escala Duas escalas sucessivas (s,s ) e (s 2,s 2 ): P = S(s 2,s 2 ){S(s,s ) P} Calcule a matriz produto e = {S(s 2,s 2 ) S(s,s )} P verifique... A matriz composta de transformação para esse caso é: s 2 s s s 2 s2 s s s2 Escalas são multiplicativas! li i 8
Operações comutativas Translação -Translação Escala Escala Rotação Rotação Escala (s=s) Rotação (Eercício: Provar) 9
Eercícios. Qual é a seqüência de operações que mapeia o objeto da figura A para o objeto da Figura B. Qual é a composição de matrizes que gera a matriz composta de transformação? 2
Eercícios. T(-,-) 2. E(s,s) 3. R() 4. T(2,2) M =T(2,2) R() E(s,s) T(-,-) 2
Eercícios 2. Dado o objeto na figura A, forneça a matriz da composição de transformações em coordenadas homogêneas, para o objeto na figura B. 5 C A A B C, 5 Figura A B 5 Figura B 22
Eercícios 3. Dado o objeto na figura A, forneça a matriz da composição de transformações em coordenadas homogêneas, para o objeto na figura C. 5 C B A B C, 5 Figura A A 5 Figura C 23
Eficiência Uma composição geométrica de Rotação, Translação e Escala é fornecida pela matriz abaio: ' r r2 t ' r2 r22 t r ii : composição das matrizes de rotação e escala; t i : componente de translação Para calcular lar P = M. P são necessárias 9 multiplicações e 6 adições. Mas como a última linha da matriz é fia. Necessário somente 4 multiplicações e 4 adições (ganho de eficiência) 24