A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Transformações Geométricas Coordenadas Homogêneas e Rotações.

Apresentações semelhantes


Apresentação em tema: "Transformações Geométricas Coordenadas Homogêneas e Rotações."— Transcrição da apresentação:

1 Transformações Geométricas Coordenadas Homogêneas e Rotações

2 Motivação: representação de movimentos e formas

3 Objetos compostos hierarquicamente Hieraquia de movimentos Base Braço 1 Braço 2 Braço 3 Dedo Hieraquia de transformações

4 Transformações R 2 R 2 Exemplos: x y x´ y´ p´p´ = x y x y p =

5 Transformações lineares R 2 R 2 x y m 11 x´ y´ = m 21 m 22 m 12 Mostre que: 1 0 x y 0 1 m 11 m 21 1 0 T = m 12 m 22 0 1 T = T (0) = 0 A) B)

6 Transformações lineares: escala x y a = x y x´ y´ a´a´ = Redução (0< s x <1), Aumento (s y >1) c b x y i j

7 Transformações lineares: espelhamento x´ = -1x y´ = y x y x´ y´ p' = = p x y x y i j

8 Transformações lineares: rotação x´ y´ p' = x´ y´ r x´ = x.cos - y.sen y´ = x.sen + y.cos x y p = x y r rr

9 Transformações Lineares: matriz derivada pela geometria x y i j

10 Mudança de referêncial x y p = x y x y cos u v = sen cos -sen u v u v ou x y p = x´ y´ p' = x y x y uxux u v = vxvx vyvy uyuy Para montarmos a matriz que transforma as coordenadas de um refencial xy para um novo refencial uv basta escrevermos as linhas como sendo os unitários das direções. x y i j

11 Mudança de coordenadas entre sistemas rotacionados As coordenas de um ponto rodado de um ângulo em relação a um sistema são iguais as coordenadas do ponto original em relação a um sistema que sofre a rotação inversa. Como o novo sistema sofre a rotação inversa, a matriz de rotação é a inversa da matriz que levaria da base original para a este novo sistema. As colunas de uma matriz de uma rotação são as transformadas dos vetores da base e a transposta desta matriz é a sua inversa (rotação matriz ortonormal). Logo as linhas da matriz que escreve uma mudança entre bases ortonormais rodadas são as coordenadas do vetores da nova base em relação a base original.

12 Transformações lineares: cisalhamento (shear) Cisalhamento em x x x yy x y i j

13 Exemplo de aplicação do cisalhamento x y a b c plano de projeção m x y a' m' x y c' b' a' m'

14 Exemplo de aplicação do cisalhamento x y a x y c' b' a' m'

15 Decomposição Singular de Matrizes diagonal rotações

16 Exemplo: cisalhamento como composição de rotações e escala

17 Transformações Geométricas: Translação x y p p' txtx tyty t = x y = txtx tyty + = x y x y ? x´ y´ = ? ? ? x y 1 x´ y´ = 0 1 0 txtx tyty + Não pode ser escrito na forma Ruim para implementação

18 Translação num plano do R 3 yhyh xhxh w w=1 x y t matriz de translação

19 Concatenação x y x0x0 y0y0 x y x y x y x0x0 y0y0

20 Concatenação xyx y x y xyx y x y T1T1 R1R1 E R2R2 T2T2 P= T 2 R 2 E R 1 T 1 P

21 Vantagens das coordenadas homogêneas (pontos no infinito) yhyh xhxh w w=1 x y 2 3 u = u uhuh 2 3 0 = ? ? uhuh w h1h1 c1c1 h 2 = c 2 h3h3 c3c3 2 3 2 2 3 1 2 3 1/2 2 3 1/4 2 3 0... 1 1.5 2 3 4 6 8 12 infinito na direção (2,3) infinito na direção (2,3) h1h1 h2h2 h3h3 h4h4 c1c1 c2c2 c3c3 c4c4

22 Reta no espaço projetivo yhyh xhxh w reta: ax+by+c=0 plano: ax+by+cw=0 plano: w=1

23 Reta paralelas no espaço projetivo yhyh xhxh w plano: ax+by+c 1 w=0 reta: ax+by+c 1 =0 reta: ax+by+c 2 =0 plano: ax+by+c 2 w=0 reta= ax+by =0 plano: w=1

24 Matriz da Homografia

25 [A] : Afim Obs: Se fosse um paralelograma a imagem do ponto 2 seria (1,1) T e não (α, ) T

26 [P] : Projetiva

27 [N] : Paralelograma para quadrado unitário

28 Transformações em 3D (translações e escalas) x y z 1 0 1 0 0 0 0 1 0 txtx tyty tztz 1 y z 1 x = 1 0 0 0 x y z x y z 1 0 sysy 0 0 0 0 szsz 0 0 0 0 1 y z 1 x = sxsx 0 0 0

29 Rotação em torno do eixo y x y z y z x y

30 Rotação em torno do eixo x x y z x

31 Rotação em torno do eixo z x y z z

32 Rotações em torno dos eixos cartesianos x y z x y z

33 Instanciação de objetos braço ante-braço x y z 1 1 1

34 Ordem das transformações x y R x y T x y R x y x y T (a) (b)

35 Composição com sistema local móvel x,x L y,y L xLxL yLyL TLTL x y p 2 = R T pp 1 = T p e p 2 = R p 1 x T R y xx yy p= R p e p 2 = T L p p 2 = R T p ou p2p2 x yLyL x y xLxL R p p p 2 = R T R -1 R p

36 Instâncias de objetos x2x2 y z2z2 xz y2y2 x4x4 y4y4 z4z4 x6x6 x1x1 y1y1 z1z1 x3x3 y3y3 z3z3 x5x5 z5z5 y5y5 d1d1 d2d2

37 x2x2 y z2z2 xz y2y2 x4x4 y4y4 z4z4 x1x1 y1y1 z1z1 x3x3 y3y3 z3z3 x5x5 z5z5 y5y5 d1d1 d2d2 baseI ante-braçoR y R z1 T y1 cotoveloR y R z1 T y1 T y2 braçoR y R z1 T y1 T y2 R z3 T y3 pulsoR y R z1 T y1 T y2 R z3 T y3 T y3 mãoR y R z1 T y1 T y2 R z3 T y3 T y3 R z5 OpenGL:

38 x2x2 y z2z2 xz y2y2 x4x4 y4y4 z4z4 x1x1 y1y1 z1z1 x3x3 y3y3 z3z3 x5x5 z5z5 y5y5 d1d1 d2d2 Desenha a base; Roda em y; Roda em z 1 ; Translada em y 1 de d 1 /2; Desenha o ante-braço; Translada em y 2 de d 1 /2; Desenha cotovelo; Roda em z 3 ; Translada em y 3 de d 2 /2; Desenha o braço; Translada em y 3 de d 2 /2; Desenha o pulso; Roda em z 5 ; Desenha a mão;

39 Hierarquia em árvore base braço direitobraço esquerdo

40 Hierarquia em árvore x5x5 y5y5 y6y6 y7y7 y8y8 y9y9 x6x6 x7x7 x8x8 x9x9 a b c d eef a palma base dos dedos dedo direitodedo esquerdo

41 y7y7 y8y8 y9y9 x7x7 x8x8 x9x9 a b c e ef void desenhaDedos(float b,float c, float e, float f ){ /* dedo esquerdo */ glPushMatrix(); /* Salva matriz corrente C 0 */ glTranslatef((f+e)/2,(b+c)/2,0.); /* C=CT esq */ glScalef(e,c,e); /* C=CS */ glutSolidCube(1.0); glPopMatrix(); /* Recupera da pilha C=C 0 */ /* dedo direito */ glPushMatrix(); /* Salva matriz corrente C 0 */ glTranslatef(-(f+e)/2,(b+c)/2,0.); /* C=CT dir */ glScalef(e,c,e); /* C=CS */ glutSolidCube(1.0); glPopMatrix(); /* Recupera da pilha C=C 0 */ }

42 Algebra da rotação em torno de um eixo unitário ê x y z

43 Rotação em torno de um eixo ê x y z

44 A coluna da matriz é a transformada dos vetores da base

45 Matriz da rotação em torno de um eixo ê x y z

46 Matriz de rotação em torno de um eixo

47 Demonstração de:

48 Fórmula de Rodrigues 1

49 Fórmula de Rodrigues 2

50 Matriz de rotação em torno de um eixo ê que não passa pela origem x y z x y z p0p0 p0p0 x y z p0p0 M x y z p0p0

51 Interface para rotações tipo ArcBall

52 Rotação do ArcBall

53 Conservativo

54 Complexidade da Rotação 90° + 90° Giroscópio

55

56 Yaw-Pitch-Roll x z y - yaw - pitch - roll

57 Ângulos de Euler Transforma x-y-z em x-y-z em 3 passos Rotação yaw de em torno eixo z Rotação pitch de em torno do eixo Rotação de em torno do eixo

58 x z y

59 Parametrização de rotações: Ângulos de Euler x x y z y x y z z x y z

60 Ângulos de Euler Gimbal Lock

61 x x y z y =90 o x y z z x y z

62 Interpolação não gera posições entre

63 Quatérnios

64 Soma e multiplicação por escalar

65 Produto de dois quatérnios

66 Produto de dois quatérnios(cont.)

67 Conjugado, normas e produto interno conjugado de um quatérnio norma de um quatérnio produto interno de dois quatérnios norma euclidiana

68 Quatérnio inverso e unitário inverso de um quatérnio unitário de um quatérnio

69 Quatérnios e rotações Dada uma rotação definida por um eixo ê e um ângulo construímos o quatérnio unitário: Dado um ponto qualquer p do R 3 construímos o quatérnio: Calculamos o produto:

70 Demostração …

71 Composição de rotações seguida de

72 Composição de rotações

73 Exemplo

74

75 Interpolação de quatérnios não é unitário não representa rotação

76 Interpolação de quatérnios (1-t) t

77

78

79 Quatérnios e matrizes

80 Matrizes e quatérnios

81 Transformação de normais x y s x =0.5 x y x y

82 Vantagens das coordenadas homogêneas (pontos no infinito, exemplo) a b c d x y O 1 1 2 a' b' c' d' x y O' infinito 1 12 1 1 1 3 0 1 0 1 0 -2 0 0 3 0 1 0 1 0 0 0 = 1 1 1 2 2 1 3 0 1 0 1 0 0 0 = 4 2 2 1 1 3 0 1 0 1 0 -2 0 0 = 1 1 2 -2 1 3 0 1 0 1 0 0 0 = 4 2 2 1 1 = = 2 1

83 FIM


Carregar ppt "Transformações Geométricas Coordenadas Homogêneas e Rotações."

Apresentações semelhantes


Anúncios Google