• Nenhum resultado encontrado

Instituto Tecnológico de Aeronáutica. Prof. Carlos Henrique Q. Forster Sala 121 IEC

N/A
N/A
Protected

Academic year: 2021

Share "Instituto Tecnológico de Aeronáutica. Prof. Carlos Henrique Q. Forster Sala 121 IEC"

Copied!
39
0
0

Texto

(1)

C

C

C

C

I

I

-

-

3

3

6

6

C

C

o

o

m

m

p

p

u

u

t

t

a

a

ç

ç

ã

ã

o

o

G

G

r

r

á

á

f

f

i

i

c

c

a

a

T

T

r

r

a

a

n

n

s

s

f

f

o

o

r

r

m

m

a

a

ç

ç

õ

õ

e

e

s

s

3

3

D

D

e

e

P

P

r

r

o

o

j

j

e

e

ç

ç

õ

õ

e

e

s

s

Instituto Tecnológico de Aeronáutica

(2)

Tópicos da aula

• Geometria Projetiva Tridimensional • Transformações em 3D

• Representação de Rotações

• Transformação de Corpo rígido em 3D • Projeção ortográfica

• Projeção perspectiva • Pontos de fuga

(3)

Livro para acompanhar essa aula

Mathematical Elements for Computer Graphics (2nd edition) D. F. Rogers, J. A. Adams

McGraw-Hill

Capítulos 2 e 3 pp 61-206

Fundamentos de Geometria Computacional Resende, R. J., Stolfi, J.

IX Escola de Computação, Recife, 1994 Capítulo 2 pp 25-76

(4)

Geometria Projetiva 3D

3 é o espaço projetivo orientado.

Pontos

Os pontos são representados por quádruplas de coordenadas homogêneas

[

]

T

w

z

y

x

das quais se exclui

[

0

0

0

0

]

T e correspondem ao ponto

[

]

T

w

z

w

y

w

x

/

/

/

em coordenadas cartesianas para

w

>

0

, à direção do vetor

)

,

,

(5)

Plano

Planos são definidos por quádruplas de coeficientes homogêneos

X

,

Y

,

Z

,

W

e um ponto

[

x

y

z

w

]

T pertence ao plano se

Xx

+

Yy

+

Zz

+

Ww

=

0

.

Um plano divide os espaço em dois lados. De acordo com o sinal da expressão

Ww

Zz

Yy

Xx

+

+

+

um ponto

[

x

y

z

w

]

T está do lado positivo ou do lado

negativo do plano.

O plano no infinito é definido como

=

[

0

0

0

1

]

T , que define o aquém do espaço como os pontos que

w

>

0

e o além,

w

<

0

.

(6)

Orientação do tetraedro 3 3 3 3 2 2 2 2 1 1 1 1 0 0 0 0 3 2 1

,

,

)

sgn

,

(

w

z

y

x

w

z

y

x

w

z

y

x

w

z

y

x

p

p

p

p

o

=

Obtenção do plano por 3 pontos

p

0

p

1

p

2

=

[

X

Y

Z

W

]

,

2 2 2 1 1 1 0 0 0 2 2 2 1 1 1 0 0 0 2 2 2 1 1 1 0 0 0 2 2 2 1 1 1 0 0 0

,

,

,

z

y

x

z

y

x

z

y

x

W

y

x

w

y

x

w

y

x

w

Z

z

x

w

z

x

w

z

x

w

Y

z

y

w

z

y

w

z

y

w

X

=

=

=

=

(7)

Transformações Geométricas em 3D

Transformação 4x4 de coordenadas homogêneas

(transformação projetiva em 3D)

=

h

hz

hy

hx

s

r

q

p

n

j

i

g

m

f

e

d

l

c

b

a

w

z

y

x

´

´

´

´

(8)

Partes da matriz de transformação:

j

i

g

f

e

d

c

b

a

Transformação linear em 3D.

n

m

l

Vetor de translação em 3D.

[

p

q

r

]

perspectiva.

(9)

Escala em 3D

1

0

0

0

0

0

0

0

0

0

0

0

0

j

e

a

=

=

=

jz

z

ey

y

ax

x

´

´

´

Exemplo: aplicar escala ao paralelepípedo

1

1

1

1

1

1

1

1

0

0

0

0

1

1

1

1

3

3

0

0

3

3

0

0

0

2

2

0

0

2

2

0

1

1

3

/

1

2

/

1

(10)

Escala global

2

/

1

1

1

1

equivale à

1

2

2

2

Translação3D

1

0

0

0

1

0

0

0

1

0

0

0

1

n

m

l

+

=

+

=

+

=

n

z

z

m

y

y

l

x

x

´

´

´

(11)

Reflexo 3D

1

0

0

0

0

1

0

0

0

0

1

0

0

0

0

1

Reflexo em relação ao plano xy.

Cisalhamento

1

0

0

0

0

1

0

0

0

1

0

0

0

1

f

c

=

+

=

+

=

z

z

fz

y

y

cz

x

x

´

´

´

Desloca x e y em função de z.

(12)

Rotações em 3D

=

1

0

0

0

0

cos

sin

0

0

sin

cos

0

0

0

0

1

θ

θ

θ

θ

x

R

Rotação em torno do eixo x no sentido anti-horário.

=

1

0

0

0

0

cos

0

sin

0

0

1

0

0

sin

0

cos

θ

θ

θ

θ

y

R

(13)

=

1

0

0

0

0

1

0

0

0

0

cos

sin

0

0

sin

cos

θ

θ

θ

θ

z

R

Rotação em torno do eixo z no sentido anti-horário.

O determinante é 1.

As linhas são vetores ortonormais (unitários e ortogonais).

Por isso

R

T

= R

−1

A composição de rotações é associativa, mas não é comutativa. A mudança da ordem das rotações pode dar resultados diferentes.

(14)

Exemplo: Rotação de 90 graus em x e em y.

Depois em ordem inversa.

1

0

1

1

0

1

1

0

1

1

1

0

=

1

1

1

1

1

0

1

1

1

0

1

0

1

1

0

1

=

1

1

1

1

(15)

Exercício: Composição de Transformações

Rotação em torno de um eixo arbitrário.

Eixo passa por

[

x

0

y

0

z

0

]

T com cossenos de direção

(

c

x

,

c

y

,

c

z

)

.

Rotação por um ângulo

δ

.

1- Transladar de

(

x

0

,

y

0

,

z

0

)

para eixo passar pela origem.

2- Rotacionar em torno do eixo x até eixo no plano xz.

3- Rotacionar em torno do eixo y até eixo coincidir com eixo z. 4- Rotacionar

δ

em torno do eixo z

5- Transformação 3 inversa 6- Transformação 2 inversa 7- Transformação 1 inversa

(16)

=

1

1

1

1

0 0 0 1

z

y

x

T

d

c

d

c

c

c

d

y z z y

=

=

+

=

α

α

,

sin

cos

2 2

=

=

0

0

0

0

0

0

0

1

2

d

c

d

c

d

c

d

c

R

T

x z y

(17)

x

c

d

=

=

β

β

,

sin

cos

=

=

1

0

0

0

0

0

0

0

1

0

0

0

3

d

c

c

d

R

T

x x y

=

=

1

0

0

0

0

1

0

0

0

0

cos

sin

0

0

sin

cos

4

δ

δ

δ

δ

z

R

T

Composição: 4 3 2 1 1 3 1 2 1 1

T

T

T

T

T

T

T

− − −

(18)

Outros Exemplos de Composição de Transformações:

• Rotações e Translações

• Rotação por eixo paralelo a um eixo coordenado. • Reflexo sobre plano arbitrário no espaço

(19)

Transformações Afins em 3D

+

=

n

m

l

P

j

i

g

f

e

d

c

b

a

P

(coordenadas cartesianas)

Ou ainda, em coordenadas homogêneas:

P

n

j

i

g

m

f

e

d

l

c

b

a

P

=

1

0

0

0

(20)

Transformações de Corpo Rígido em 3D

Rotações e translações em 3D e suas composições.

+

=

n

m

l

P

j

i

g

f

e

d

c

b

a

P

´



=

+

+

=

+

+

=

+

+

=

+

+

=

+

+

=

+

+

0

0

0

1

1

1

2 2 2 2 2 2 2 2 2

cj

bi

ag

fj

ei

dg

cf

be

ad

j

i

g

f

e

d

c

b

a

e

1

+

=

j

i

g

f

e

d

c

b

a

Restrições não-lineares

(21)

Representação de Rotações em 3D

3 graus de liberdade

• Ângulos de Euler: rotação em x, rotação em y e rotação em z.

• Ângulos de Euler II: eixo pela origem e ângulo de rotação (regra mão direita). • Matriz 3x3 ortonormal positiva.

• Quatérnions unitários.

Problema dos ângulos de Euler é o chamado “Gimbal lock”: para uma dada configuração, um grau de liberdade é perdido.

(22)

Lembrando números complexos

iy

x

z

=

+

onde

i

=

1

.

Soma

z

1

+

z

2

=

(

x

1

+

x

2

)

+

i

(

y

1

+

y

2

)

 translação.

Escala

α

z

=

( ) ( )

α

x

+

i

α

y

 escala uniforme.

Produto

z

1

z

2

=

(

x

1

+

iy

1

)(

x

2

+

iy

2

)

=

x

1

x

2

y

1

y

2

+

i

(

x

2

y

1

+

x

1

y

2

)

Fórmula de Euler

e

iθ

=

cos

θ

+

i

sin

θ

Produto por

e

iθ :

z

e

iθ

=

x

cos

θ

y

sin

θ

+

i

(

y

cos

θ

+

x

sin

θ

)

Número complexo unitário representa uma rotação em 2D.

(23)

Quatérnions

Vetor de 4 componentes

q

+

= q

q

o

(soma de um componente escalar e um vetor 3D). Produto, associativo, mas não comutativo

×

+

+

=

=

=

q

p

p

q

r

q

p

q

p

pq

r

q

p

r

o o o

Produto escalar de quartenhões

q

p

+

=

q

pq

p

o o Norma:

q

q

+

=

=

q

q

q

2

q

o o o

(24)

Quartenhão unitário tem norma igual a 1.

Rotação de

θ

em torno de um vetor unitário

ω

r

é representada por

ω

θ

θ

r

+

=

2

cos

2

sin

o

q

Notar que o

q

define a mesma rotação que

o

q

, visto que inverte a orientação do eixo

e o ângulo simultaneamente. Quartenhão conjugado:

q

= q

q

o *

Inverte apenas o “cosseno”: rotação inversa para quartenhão unitário:

o o o

(25)

Fórmula da rotação o o

q

q

(

0

)

*

)

0

(

+

x

=

+

x

A composição de rotações resulta da multiplicação de quartenhões

* * * *

)

)(

0

)(

(

)

)

0

(

(

)

0

(

)

0

(

o o o o o o o o o o

p

q

q

p

p

q

q

p

p

p

x

x

x

x

′′

=

+

=

+

=

+

+

A matriz de rotação correspondente é

+

+

+

+

+

+

+

+

+

=

2 3 2 2 2 1 2 0 2 3 1 0 3 1 2 0 3 2 1 0 2 3 2 2 2 1 2 0 1 2 3 0 3 1 2 0 2 1 3 0 2 3 2 2 2 1 2 0

)

(

2

)

(

2

)

(

2

)

(

2

)

(

2

)

(

2

q

q

q

q

q

q

q

q

q

q

q

q

q

q

q

q

q

q

q

q

q

q

q

q

q

q

q

q

q

q

q

q

q

q

q

q

R

(26)

Para os ângulos de Euler

α

,

β

,

γ

, a matriz de rotação é dada por

+

+

+

+

=

γ

α

γ

α

γ

β

α

γ

α

γ

β

α

β

α

γ

α

γ

β

α

γ

α

γ

β

α

β

γ

β

γ

β

cos

cos

cos

sin

sin

sin

cos

sin

sin

cos

sin

cos

cos

sin

cos

cos

sin

sin

sin

sin

cos

cos

sin

sin

sin

sin

cos

cos

cos

R

A rotação em torno do vetor

n

=

[

n

1

n

2

n

3

]

T unitário é

+

+

=

0

0

0

sin

)

cos

1

(

cos

1 2 1 3 2 3 2 3 2 3 1 3 3 2 2 2 1 2 3 1 2 1 2 1

n

n

n

n

n

n

n

n

n

n

n

n

n

n

n

n

n

n

n

n

n

I

R

θ

θ

θ

(27)

Projeção Ortográfica

Redução para um espaço de dimensão menor.

No caso da projeção ortográfica, perdemos a informação do eixo z.

=

w

z

y

x

P

1

0

0

0

0

0

0

0

0

0

1

0

0

0

0

1

ou simplesmente

=

w

z

y

x

P

1

0

0

0

0

0

1

0

0

0

0

1

w

W

Z

y

Y

x

X

=

=

=

=

0

(28)

Projeção Perspectiva

Várias formulações possíveis

C

P

f

y

(29)



=

=

=

x

z

f

x

y

z

f

y

z

y

f

y

Em coordenadas homogêneas:

z

w

fx

x

fy

y

=

=

=

=

w

z

y

x

f

f

P

0

1

0

0

0

0

0

0

0

0

, ou então

=

w

z

y

x

f

P

0

1

0

0

0

0

1

0

0

0

0

1

(30)

Outro modelo.

C

P

f

y

z

(31)

+

=

+

=

+

=

x

f

z

f

x

y

f

z

f

y

f

z

y

f

y

Em coordenadas homogêneas:

f

z

f

f

z

w

x

x

y

y

+

=

+

=

=

=

1

=

w

z

y

x

f

P

1

1

0

0

0

0

1

0

0

0

0

1

(32)

Mais um modelo

C

P

f

y

z

(33)

=

=

=

x

f

z

f

x

y

f

z

f

y

f

z

y

f

y

Em coordenadas homogêneas:

1

=

=

=

=

f

z

f

f

z

w

x

x

y

y

=

w

z

y

x

f

P

1

1

0

0

0

0

1

0

0

0

0

1

(34)

Pontos de Fuga

Os pontos de fuga numa imagem de perspectiva são os pontos em que as imagens das retas paralelas de uma cena se encontram.

Para nós, é simplesmente a projeção perspectiva de pontos no infinito.

Se a transformação de um ponto no infinito resultar um ponto no infinito, as retas paralelas naquela direção são também paralelas na imagem.

Se a transformação de um ponto no infinito resultar um ponto finito, as retas paralelas naquela direção são concorrentes na imagem sobre esse ponto.

(35)

Pontos de Fuga

Resultado da seguinte matriz de projeção

+

=

1

1

1

0

0

0

1

0

0

0

0

1

0

0

0

0

1

px

z

y

x

z

y

x

p

Aplicando ao ponto no infinito no eixo x

=

=

1

0

0

/

1

0

0

1

0

0

0

1

1

0

0

0

1

0

0

0

0

1

0

0

0

0

1

p

p

p

(36)

Resultado da seguinte projetividade:

+

+

+

=

1

1

1

0

1

0

0

0

0

1

0

0

0

0

1

pz

py

px

z

y

x

z

y

x

r

q

p

Aplicando aos pontos no infinito da direção dos eixos x, y e z e à origem:

1

0

0

0

,

1

/

1

0

0

,

1

0

/

1

0

,

1

0

0

/

1

1

0

0

0

0

1

0

0

0

0

1

0

0

0

0

1

1

0

1

0

0

0

0

1

0

0

0

0

1

r

q

p

r

q

p

(37)

Exemplo – encontrar os pontos de fuga da seguinte transformação para as retas paralelas ao eixo x, ao eixo y e ao eixo z.

1

245

.

0

283

.

0

141

.

0

0

0

0

0

0

612

.

0

707

.

0

354

.

0

0

5

.

0

0

866

.

0

(38)

Resposta: O ponto de fuga de

1

245

.

0

283

.

0

141

.

0

0

0

0

0

0

612

.

0

707

.

0

354

.

0

0

5

.

0

0

866

.

0

para o eixo x é

141

.

0

0

354

.

0

866

.

0

.

Em coordenadas cartesianas é o ponto

−

1

0

5

.

2

142

.

6

ou

(

6

.

142

,

2

.

5

)

da imagem. Os pontos de fuga para o eixo y e z são respectivamente

(

0

,

2

.

5

)

e

(

2

.

04

,

2

.

5

)

(39)

Exemplo

Translação para traz e para frente.

Mudança da distância focal em cada um dos modelos de projeção perspectiva. Encontrar os pontos de fuga para uma dada matriz de transformação.

Referências

Documentos relacionados

- Se o estagiário, ou alguém com contacto direto, tiver sintomas sugestivos de infeção respiratória (febre, tosse, expetoração e/ou falta de ar) NÃO DEVE frequentar

Este trabalho teve a finalidade de realizar experimentos com a fus˜ao dos atributos obti- dos com estes m´etodos atrav´es de diferentes algoritmos de selec¸˜ao de atributos presentes

No que se refere aos dados foram utilizadas as variações do IBrX-100 e de ações que compões tal índice no dia seguinte ao anúncio da Taxa SELIC e os choques

Desta forma, a qualidade higiênico-sanitária das tábuas de manipulação dos Laboratórios de Técnica Dietética, Tecnologia de Alimentos e Gastronomia e das

Deve conhecer perfeitamente este Manual de Procedimentos ou “Bússola”, e o papel de cada ministério da Equipe de Serviço; assim como o Esquema do Curso

As Despesas Gerais e Administrativas (G&amp;A) foram reduzidas em 50 bps como percentual da receita líquida no 3T12, na comparação com o 3T11, em virtude de alavancagem

Conclui-se que a densidade da polpa de cajá aumenta em função da redução da temperatura e do aumento do teor de sólidos solúveis totais de 9 para 60 °Brix e que o

Nesta seção, seguem-se as explicações bem como as justificativas acerca das decisões assumidas na confecção desta dissertação (escolha dos modelos, considerações sobre os