Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita...

50
Transformações Geométricas Grafos de Cena Instituto Superior Técnico Edward Angel, Cap. 4 Computação Gráfica 2009/2010 1

Transcript of Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita...

Page 1: Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita Convenção matemática Referencial de mão esquerda ©2010, CG&M/IST e Figuras Addison

Transformações GeométricasGrafos de Cena

Instituto Superior Técnico

Edward Angel, Cap. 4

Instituto Superior Técnico Computação Gráfica

2009/2010

1

Page 2: Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita Convenção matemática Referencial de mão esquerda ©2010, CG&M/IST e Figuras Addison

Na última aula...

� Transformações Geométricas� Translação� Escala� Rotação

©2010, CG&M/IST e Figuras Addison Wesley

� Rotação

� Espaço Homogéneo� Coordenadas Homogéneas� Transformações no Espaço Homogéneo

Page 3: Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita Convenção matemática Referencial de mão esquerda ©2010, CG&M/IST e Figuras Addison

Sumário

� Transformações Geométricas

� Composição de Transformações

Deformação Lateral

©2010, CG&M/IST e Figuras Addison Wesley

� Deformação Lateral

� Transformações no espaço 3D

� Matriz de transformação composta

� Grafos de Cena

Page 4: Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita Convenção matemática Referencial de mão esquerda ©2010, CG&M/IST e Figuras Addison

Transformações no Espaço Homogéneo (1/2)

Translação Escala

1 0 dx0 1 dy0 0 1

MT = T(dx,dy) = ME = S(SX,SY) = SX 0 00 SY 00 0 1

©2010, CG&M/IST e Figuras Addison Wesley

Rotação

MR = R(β) =cos(β) -sin(β) 0sin(β) cos(β) 0 0 0 1

Page 5: Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita Convenção matemática Referencial de mão esquerda ©2010, CG&M/IST e Figuras Addison

Transformações no Espaço Homogéneo (2/2)

Translação x´ 1 0 dx xy´ 0 1 dy y

1 0 0 1 1=

.

� Em coordenadas homogéneas� Transformação = Produto de Matrizes

©2010, CG&M/IST e Figuras Addison Wesley

1 0 0 1 1

Escala

Rotação

x´ Sx 0 0 xy´ 0 Sy 0 y

1 0 0 1 1=

.

x´ cos(β) -sin(β) 0 xy´ sin(β) cos(β) 0 y1 0 0 1 1

=.

Page 6: Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita Convenção matemática Referencial de mão esquerda ©2010, CG&M/IST e Figuras Addison

Computação Gráfica

Composição de TransformaçõesComposição de Transformações

Page 7: Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita Convenção matemática Referencial de mão esquerda ©2010, CG&M/IST e Figuras Addison

Composição de Transformações (1/4)

P P´ P´´T1 T2

P´ = T1 · P e P´´= T2 · P´

� No espaço homogéneo� Composição de Transformações = Produto de Matrizes

©2010, CG&M/IST e Figuras Addison Wesley

� Transformações associam-se � Da direita para a esquerda� Pela ordem inversa de aplicação

P´´= T2 · (T1 · P)

P´´= (T2 ○ T1) · P = (T2 · T1) · P

Page 8: Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita Convenção matemática Referencial de mão esquerda ©2010, CG&M/IST e Figuras Addison

Exemplo: rotação em torno de um ponto

Composição de Transformações (2/4)

Problema: Rotação definida em relação a (0, 0). Como rodar em torno de um ponto qualquer?

Resposta: sequência de 3 transformações básicas.

Y Y YY T(-x1,-y1) R(θ) T(x1,y1)

©2010, CG&M/IST e Figuras Addison Wesley

X X

P1

XT(-x1,-y1)

P1

X

x1

y1

R (θ) T(x1,y1)

T = T(x1,y1) . R(θ) . T(-x1,-y1) =

1 0 x1 cos θ -sin θ 0 1 0 -x1 cos θ -sin θ x1(1 - cos θ) + y1sin θ0 1 y1 sin θ cos θ 0 0 1 -y1 sin θ cos θ y1(1 - cos θ) - x1sin θ0 0 1 0 0 1 0 0 1 0 0 1

. . =

T(-x1,-y1) R(θ) T(x1,y1)

Page 9: Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita Convenção matemática Referencial de mão esquerda ©2010, CG&M/IST e Figuras Addison

Composição de Transformações (3/4)

� Em geral não é comutativa� Produto de matrizes não o é

� Alguns pares comutativos

©2010, CG&M/IST e Figuras Addison Wesley

� Alguns pares comutativos� Translação ○ Translação

(Translação + Translação)

� Escala ○ Escala (Escala + Escala)

� Rotação ○ Rotação (Rotação + Rotação)

Page 10: Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita Convenção matemática Referencial de mão esquerda ©2010, CG&M/IST e Figuras Addison

Composição de Transformações (4/4)

Exemplos de Comutatividade

1 0 dx2 1 0 dx1 1 0 (dx1 + dx2)0 1 dy2 0 1 dy1 0 1 (dy1 + dy2)

0 0 1 0 0 1 0 0 1=

.

©2010, CG&M/IST e Figuras Addison Wesley

Sx2 0 0 Sx1 0 0 Sx1.Sx2 0 0 0 Sy2 0 0 Sy1 0 0 Sy1.Sy2 0

0 0 1 0 0 1 0 0 1=

.

cos α -sin α 0 cos β -sin β 0 cos (α + β) -sin (α + β) 0sin α cos α 0 sin β cos β 0 sin (α + β) cos (α + β) 00 0 1 0 0 1 0 0 1

=.

Page 11: Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita Convenção matemática Referencial de mão esquerda ©2010, CG&M/IST e Figuras Addison

Composição de Transformações (5/5)

Exemplo de composições não comutativas

Translação + Escala

Escala + Translação

©2010, CG&M/IST e Figuras Addison Wesley

Page 12: Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita Convenção matemática Referencial de mão esquerda ©2010, CG&M/IST e Figuras Addison

Computação Gráfica

Transformações Geométricas:Transformações Geométricas:

Deformação Lateral

Page 13: Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita Convenção matemática Referencial de mão esquerda ©2010, CG&M/IST e Figuras Addison

Deformação Lateral (shear transformation)

� Transformação primitiva� Não se define por composição

©2010, CG&M/IST e Figuras Addison Wesley

Page 14: Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita Convenção matemática Referencial de mão esquerda ©2010, CG&M/IST e Figuras Addison

Deformação Lateral (shear transformation)

Deformação lateral em X

MSH = SHX(a) = 1 a 00 1 00 0 1

x´ 1 a 0 xy´ 0 1 0 y

1 0 0 1 1=

.

©2010, CG&M/IST e Figuras Addison Wesley

1 0 0 1 1

Page 15: Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita Convenção matemática Referencial de mão esquerda ©2010, CG&M/IST e Figuras Addison

Deformação Lateral (shear transformation)

Deformação lateral em Y

x´ 1 0 0 xy´ b 1 0 y

1 0 0 1 1=

.MSH = SHY(b) = 1 0 0

b 1 00 0 1

©2010, CG&M/IST e Figuras Addison Wesley

1 0 0 1 10 0 1

Page 16: Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita Convenção matemática Referencial de mão esquerda ©2010, CG&M/IST e Figuras Addison

Deformação Lateral (shear transformation)

� Tipo de transformação?

� Questões:� Preserva ângulos?

©2010, CG&M/IST e Figuras Addison Wesley

� Preserva comprimentos?� Preserva paralelismo de linhas?

� É transformação linear?� É transformação afim?� É transformação projectiva?

Page 17: Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita Convenção matemática Referencial de mão esquerda ©2010, CG&M/IST e Figuras Addison

Transformações Geométricas

Classificação

Projectivas ⊃⊃⊃⊃ Afins ⊃⊃⊃⊃ Lineares

� Projectivas� Podem não preservar o paralelismo das linhas� A imagem de uma linha é um ponto ou uma linha

� Nunca uma curva

©2010, CG&M/IST e Figuras Addison Wesley

� Nunca uma curva

� Afins� Mantêm paralelismo de linhas� A imagem do vector (0,0) pode não ser (0,0)

� Lineares� Transformam linhas em linhas ou em pontos� A imagem do vector (0,0) é sempre (0,0)

Page 18: Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita Convenção matemática Referencial de mão esquerda ©2010, CG&M/IST e Figuras Addison

Transformações Geométricas 2D

Transformações ElementaresTranslação Escala

Rotação

1 0 dx0 1 dy0 0 1

MT = T(dx,dy) = ME = S(SX,SY) = SX 0 00 SY 00 0 1

©2010, CG&M/IST e Figuras Addison Wesley

Rotação

MR = R(β) =cos(β) -sin(β) 0sin(β) cos(β) 0 0 0 1

Deformação Lateral

MSH = SHX(a) = 1 a 00 1 00 0 1

MSH = SHY(b) = 1 0 0b 1 00 0 1

Page 19: Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita Convenção matemática Referencial de mão esquerda ©2010, CG&M/IST e Figuras Addison

Computação Gráfica

Transformações Geométricas 3DTransformações Geométricas 3D

Page 20: Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita Convenção matemática Referencial de mão esquerda ©2010, CG&M/IST e Figuras Addison

Espaço vectorial tri-dimensional (1/2)

� Usa o referencial de mão direita“Right handed coordinate system”� Rotações positivas

� Sentido oposto ao da rotação dos ponteiros do relógio“counterclockwise”

©2010, CG&M/IST e Figuras Addison Wesley

“counterclockwise”

� Eixo ZZ “aponta” para “fora” da página

XZ

Y

(fora da página)

Page 21: Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita Convenção matemática Referencial de mão esquerda ©2010, CG&M/IST e Figuras Addison

Espaço vectorial tri-dimensional (2/2)

� Referencial de mão direita� Convenção matemática

� Referencial de mão esquerda

©2010, CG&M/IST e Figuras Addison Wesley

� Interpretação natural em CG� Objecto com maiores valores na coordenada Z

� Encontram-se mais distantes do observador

� Na prática usam-se ambos os referenciais� Conforme sistema gráfico, aplicação ou biblioteca

Page 22: Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita Convenção matemática Referencial de mão esquerda ©2010, CG&M/IST e Figuras Addison

Transformações Geométricas 3D

� Transformações 2D � Matrizes 3x3 no espaço homogéneo

Analogamente

©2010, CG&M/IST e Figuras Addison Wesley

� Transformações 3D� Matrizes 4x4 no espaço homogéneo

Analogamente

Page 23: Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita Convenção matemática Referencial de mão esquerda ©2010, CG&M/IST e Figuras Addison

Coordenadas Homogéneas

� Espaço 3D representado num espaço 4D� Ponto (x,y,z) transformado num ponto (x,y,z,W)

P3d(x, y, z) → Ph(Wx, Wy, Wz, W), W ≠ 0

©2010, CG&M/IST e Figuras Addison Wesley

� Semelhante a 2D� Ponto 3D tem inúmeras representações em 4D

� Infinitos pontos no espaço homogéneo � representam o mesmo ponto em 3D

� Homogeneização idêntica

Page 24: Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita Convenção matemática Referencial de mão esquerda ©2010, CG&M/IST e Figuras Addison

Homogeneização em 3D� Idêntica à realizada em 2D

� Dividem-se coordenadas homogéneas por W

(x, y, z, W) =3d (x/W , y/W, z/W, 1)

x/W, y/W e z/W: coordenadas

©2010, CG&M/IST e Figuras Addison Wesley

x/W, y/W e z/W: coordenadas Cartesianas do ponto homogéneo

(x, y, z, W) → (x/W , y/W, z/W)

(x, y, z) → (x , y, z, 1)W=1

Page 25: Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita Convenção matemática Referencial de mão esquerda ©2010, CG&M/IST e Figuras Addison

Transformações Elementares 3D

Translação

1 0 0 dx0 1 0 dy

MT = T(dx, dy, dz) =

©2010, CG&M/IST e Figuras Addison Wesley

0 1 0 dy0 0 1 dz0 0 0 1

x´ 1 0 0 dx xy´ 0 1 0 dy yz´ 0 0 1 dz z

1 0 0 0 1 1

= .

Page 26: Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita Convenção matemática Referencial de mão esquerda ©2010, CG&M/IST e Figuras Addison

Transformações Elementares 3D

Escala

Sx 0 0 00 Sy 0 0

MS = S(Sx, Sy, Sz) =

©2010, CG&M/IST e Figuras Addison Wesley

0 Sy 0 00 0 Sz 00 0 0 1

x´ Sx 0 0 0 xy´ 0 Sy 0 0 yz´ 0 0 Sz 0 z

1 0 0 0 1 1

= .

Page 27: Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita Convenção matemática Referencial de mão esquerda ©2010, CG&M/IST e Figuras Addison

Transformações Elementares 3DRotação

Y

©2010, CG&M/IST e Figuras Addison Wesley

XZ

� Definir matriz de rotação única� Não trivial� Usam-se quaterniões

� Para definir rotações espaciais

Page 28: Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita Convenção matemática Referencial de mão esquerda ©2010, CG&M/IST e Figuras Addison

Transformações Elementares 3DRotação

Y

Rz(ψ)

Ry(φ)

Rx(θ)

©2010, CG&M/IST e Figuras Addison Wesley

28

XZ

Rx(θ)

� Abordagem mais simples� Realizar rotações apenas sobre eixos de coordenadas� Três matrizes distintas

Page 29: Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita Convenção matemática Referencial de mão esquerda ©2010, CG&M/IST e Figuras Addison

Transformações Elementares 3D

Rotação

cos θ -sin θ 0 0sin θ cos θ 0 0

Rz(ψ): em torno do eixo dos ZZY

Ry(φ)

©2010, CG&M/IST e Figuras Addison Wesley

sin θ cos θ 0 00 0 1 00 0 0 1

1 0 0 00 cos θ -sin θ 00 sin θ cos θ 00 0 0 1

cos θ 0 sin θ 00 1 0 0-sin θ 0 cos θ 00 0 0 1

Rx(θ): em torno do eixo dos XX Ry(φ): em torno do eixo dos YY

XZ

Rz(ψ) Rx(θ)

Page 30: Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita Convenção matemática Referencial de mão esquerda ©2010, CG&M/IST e Figuras Addison

Transformações Elementares 3D

Rotação

cos θ -sin θ 0 0sin θ cos θ 0 0

Rz(ψ): em torno do eixo dos ZZY

Ry(φ)

©2010, CG&M/IST e Figuras Addison Wesley

sin θ cos θ 0 00 0 1 00 0 0 1

1 0 0 00 cos θ -sin θ 00 sin θ cos θ 00 0 0 1

cos θ 0 sin θ 00 1 0 0-sin θ 0 cos θ 00 0 0 1

Rx(θ): em torno do eixo dos XX Ry(φ): em torno do eixo dos YY

XZ

Rz(ψ) Rx(θ)

Page 31: Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita Convenção matemática Referencial de mão esquerda ©2010, CG&M/IST e Figuras Addison

Transformações Elementares 3D

Rotação

� Aproximação Incremental� Para pequenos ângulos

� sin (α) ≈ α� cos(α) ≈ 1

©2010, CG&M/IST e Figuras Addison Wesley

� cos(α) ≈ 1

31

1 -ψ φ 0ψ 1 -θ 0-φ θ 1 00 0 0 1

Rz(ψ) Ry(φ) Rx(θ) =

Page 32: Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita Convenção matemática Referencial de mão esquerda ©2010, CG&M/IST e Figuras Addison

Transformações Elementares 3D

Deformação Lateral em 3D� Semelhante a 2D

� 2D� Um eixo fixo� Variação no outro

� 3D

©2010, CG&M/IST e Figuras Addison Wesley

3D� Um eixo fixo� Variação nos outros dois

Page 33: Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita Convenção matemática Referencial de mão esquerda ©2010, CG&M/IST e Figuras Addison

Transformações Elementares 3D

Deformação Lateral em 3D

Deformação Lateral

1 0 shx 00 1 shy 00 0 1 0

SHxy(shx, shy) =

©2010, CG&M/IST e Figuras Addison Wesley33

0 0 1 00 0 0 1

1 shx 0 00 1 0 00 shz 1 00 0 0 1

SHxz(shx, shz) =1 0 0 0shy 1 0 0shz 0 1 00 0 0 1

SHyz(shy, shz) =

Page 34: Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita Convenção matemática Referencial de mão esquerda ©2010, CG&M/IST e Figuras Addison

Transformações de Corpo Rígido

� Preservam ângulos e comprimentos

� Objecto (corpo) não é� “Transformado” nem distorcido

� Cubo unitário

©2010, CG&M/IST e Figuras Addison Wesley

Cubo unitário� Permanece um cubo unitário

1 0 0 dx0 1 0 dy0 0 1 dz0 0 0 1

T(dx, dy, dz) = cos θ 0 sin θ 00 1 0 0-sin θ 0 cos θ 00 0 0 1

Ry(θ) =

Page 35: Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita Convenção matemática Referencial de mão esquerda ©2010, CG&M/IST e Figuras Addison

Computação Gráfica

Matriz de Matriz de Transformação Composta

Page 36: Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita Convenção matemática Referencial de mão esquerda ©2010, CG&M/IST e Figuras Addison

Matriz de Transformação Composta

� Qualquer sequência de� Translações� Rotações� Escalas

©2010, CG&M/IST e Figuras Addison Wesley

� Pode ser representada numa única matriz:

r11 r12 r13 txr21 r22 r23 tyr31 r32 r33 tz0 0 0 1

M =

Page 37: Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita Convenção matemática Referencial de mão esquerda ©2010, CG&M/IST e Figuras Addison

Matriz de Transformação Composta

� Matriz de transformações genérica (MTC)� Permite aplicar transformação

� Com 9 somas e 9 multiplicações (4+4 se 2D)

©2010, CG&M/IST e Figuras Addison Wesley

x´= x · r11 + x · r12 + x · r13 + tx

y´= y · r21 + y · r22 + y · r23 + ty

z´= z · r31 + z · r32 + z · r33 + tz

xyz

.=x’y’z’

R + T

� Aumento de eficiência (+ eventuais optimizações)

Page 38: Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita Convenção matemática Referencial de mão esquerda ©2010, CG&M/IST e Figuras Addison

� Avião definido no sistema de coordenadas local

� Problema:� Orientar o avião de acordo com a direcção de voo

Composição de Transformações em 3D

Exemplo Prático

©2010, CG&M/IST e Figuras Addison Wesley

� Numa posição determinada

� Solução:� Aplicar rotação seguida de translação

46

Page 39: Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita Convenção matemática Referencial de mão esquerda ©2010, CG&M/IST e Figuras Addison

Composição de Transformações em 3D

Exemplo Prático

©2010, CG&M/IST e Figuras Addison Wesley

Page 40: Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita Convenção matemática Referencial de mão esquerda ©2010, CG&M/IST e Figuras Addison

0|up x DOF| |DOF x (up x DOF)| |DOF| 0

00 0 0 1

R =

Composição de Transformações em 3D

Exemplo Prático

©2010, CG&M/IST e Figuras Addison Wesley

� Como calcular R?

� Funciona sempre?� Não, se DOF em yy

Page 41: Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita Convenção matemática Referencial de mão esquerda ©2010, CG&M/IST e Figuras Addison

Transformações Geométricas

Mudança de Sistema de Coordenadas

P(2) = M2←3 · P(3) P(1) = M1←2 · P(2)

©2010, CG&M/IST e Figuras Addison Wesley

P = M2←3 · P

M1←3 = M1←2 · M2←3

P

P = M1←2 · P

Page 42: Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita Convenção matemática Referencial de mão esquerda ©2010, CG&M/IST e Figuras Addison

Transformações Geométricas

Mudança de Sistema de Coordenadas

� Exemplo de aplicação:� Decomposição em sub-objectos

Y

Y

Z

©2010, CG&M/IST e Figuras Addison Wesley

X

Z

X

X

Y

Z

Page 43: Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita Convenção matemática Referencial de mão esquerda ©2010, CG&M/IST e Figuras Addison

Transformações Geométricas

Mudança de Sistema de Coordenadas

� Para mover o triciclo� Temos de saber as relações das suas partes com o WCS� Exemplo:

� Roda da frente em relação ao WCS

©2010, CG&M/IST e Figuras Addison Wesley51

Page 44: Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita Convenção matemática Referencial de mão esquerda ©2010, CG&M/IST e Figuras Addison

Transformações Geométricas

Mudança de Sistema de Coordenadas

©2010, CG&M/IST e Figuras Addison Wesley

P(wh) = Rz(β) · Pori(wh)

Mwo←wh = T(βr, 0, 0)

P(wo) = T(βr, 0, 0) · Rz(β) · P(wh)

Page 45: Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita Convenção matemática Referencial de mão esquerda ©2010, CG&M/IST e Figuras Addison

Computação Gráfica

Grafo de CenaGrafo de Cena

Page 46: Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita Convenção matemática Referencial de mão esquerda ©2010, CG&M/IST e Figuras Addison

Grafo de Cena

� Cenas 3D armazenadas em DAG� Grafo de Cena

� Java3D� VRML� OpenSceneGraph

Como descrever um paralelepípedo numa cena?

©2010, CG&M/IST e Figuras Addison Wesley

� OpenSceneGraph� OpenSG

� Grafo de Cena contém� Objectos (primitivas gráficas)

� Cubos, esferas, cones, superfícies,....)� Atributos e Transformações

(com estas primitivas)

Page 47: Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita Convenção matemática Referencial de mão esquerda ©2010, CG&M/IST e Figuras Addison

Transformações em Grafos de Cena

raíz

t0

g1

t1 t2

t5 t6

p3 p4

g3

Exemplo de um Grafo de Cena

©2010, CG&M/IST e Figuras Addison Wesley

t1 t2

t3 t4

p1

p2

g3 g2

g3

transformações

grupos de obj

primitivas

� Neste grafo de cena� A transformação t0 afecta todos os objectos� Enquanto t2 só afecta p2 e uma instância do grupo g3

� t2 não afecta p1 e a outra instância de g3

Page 48: Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita Convenção matemática Referencial de mão esquerda ©2010, CG&M/IST e Figuras Addison

Múltipla Instanciação

raíz

t0

g1

t1 t2

t5 t6

p3 p4

g3

Exemplo de um Grafo de Cena

©2010, CG&M/IST e Figuras Addison Wesley

� Múltiplas instâncias de uma sub-árvore� Podem utilizar-se várias� É necessário definir antes de instanciar

� Mais simples de concretizar

t1 t2

t3 t4

p1

p2

g3 g2

g3

transformações

grupos de obj

primitivas

Page 49: Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita Convenção matemática Referencial de mão esquerda ©2010, CG&M/IST e Figuras Addison

Transformações Hierárquicas (1/2)

� Matriz de Transformação Composta (MTC)� Matriz a aplicar a cada objecto

� Cálculo da MTC� Concatenação de todas as transformações

©2010, CG&M/IST e Figuras Addison Wesley

� Concatenação de todas as transformações� Em nós superiores no caminho

� Desde a raiz até ao objecto

� Detalhes variam consoante o sistema� Tenham atenção

� OpenGL e VRML têm diferenças� Vejam a ordem com que são realizadas as transofrmações

� RTFM

Page 50: Transformações Geométricas Grafos de Cena - Autenticação · Referencial de mão direita Convenção matemática Referencial de mão esquerda ©2010, CG&M/IST e Figuras Addison

Transformações Hierárquicas (2/2)

Exemplo

m0

� No grafo� para g0, temos MTC = m0

� para p1, MTC = m1 * m0

©2010, CG&M/IST e Figuras Addison Wesley

g0

m1

m3

p1

p3 p4

m2

g2

� para p1, MTC = m1 * m0

� para p3, MTC = m2 * m0

� para p4, MTC = m3 * m2 * m0

� Em que� mi - matriz de transformação� pi - primitiva associada ao nó i� gi - sub-árvore com raíz em i

?