Вы находитесь на странице: 1из 125

Unidade IV – Geometria

IME 04-10842
Computação Gráfica
Professor Guilherme Mota
Professor Gilson Costa
Problemas
Fundamentais

2/125
Geometrias – Problemas Fundamentais

● Qual a geometria da Computação Gráfica?

● O que é uma geometria?

3/125
Métodos de Definição
de Geometrias

4/125
Métodos de Definição de Geometrias

● Método Axiomático
– Definição do espaço, axiomas e teoremas

● Método de Coordenadas
– Axiomas e teoremas são traduzidos em equações

● Método dos Grupos de Transformação


– Espaço e Grupo de Transformações

5/125
Método Axiomático

● Introduzido por Euclides (~300 a.C.)


n
● Espaço: ℝ
● Objetos: pontos, retas, planos,
hiperplanos
● Axiomas e Postulados (Teoremas)

Elementos
6/125
Geometria Euclidiana

– Axioma 1: Coisas que são iguais a uma mesma coisa, são


iguais entre si.
– Axioma 2: Se iguais são adicionados a iguais, os resultados
são iguais.
– Axioma 3: Se iguais são subtraídos de iguais, os restos são
iguais.
– Axioma 4: Coisas que coincidem uma com a outra, são
iguais.
– Axioma 5: O todo é maior do que qualquer uma de suas
partes.

7/125
Geometria Euclidiana

– Postulado 1: Dados dois pontos distintos, há um único segmento


de reta que os une;
– Postulado 2: Um segmento de reta pode ser prolongado
indefinidamente para construir uma reta;
– Postulado 3: Dados um ponto qualquer e uma distância
qualquer, pode-se construir uma circunferência de centro
naquele ponto e com raio igual à distância dada;
– Postulado 4: Todos os ângulos retos são congruentes;
– Postulado 5: Se duas linhas intersectam uma terceira linha de tal
forma que a soma dos ângulos internos em um lado é menor
que dois ângulos retos, então as duas linhas devem se
intersectar neste lado se forem estendidas indefinidamente.

8/125
Método Axiomático

● Garantir que o conjunto de axiomas é consistente, i.e., não


levam a uma contradição lógica.
● Garantir que o conjunto de axiomas é completo, i.e., suficientes
para provar todas as propriedades da geometria.
● Grande poder de síntese: axiomas resumem propriedades
comuns para um grande número de espaços e objetos.
● Problema: não determina uma representação da geometria.

9/125
Método de Coordenadas

● Introduzido por René Descartes


(1596-1650)
● Abordagem analítica: Geometria
Analítica
● Consiste em definir um sistema de
coordenadas: propriedades da
geometria (axiomas e teoremas) são
traduzidas para equações matemáticas.
Cogito ergo sum

10/125
Método de Coordenadas

● Introduzido por René Descartes


(1596-1650)
● Abordagem analítica: Geometria
Analítica
● Consiste em definir um sistema de
coordenadas: propriedades da
geometria (axiomas e teoremas) são
traduzidas para equações matemáticas.

11/125
Método de Coordenadas

● Diversos sistemas de coordenadas podem ser considerados:


Cartesianas, Polares, Cilíndicas, Esféricas, …
● Adequado para técnicas computacionais: define uma
representação.

Espaço Coordenadas Representação

12/125
Método de Coordenadas

● Diversos sistemas de coordenadas podem ser considerados:


Cartesianas, Polares, Cilíndicas, Esféricas, …
● Adequado para técnicas computacionais: define uma
representação.
● Problemas:
– Redundância: precisamos de três coordenadas (x, y, z)
para representar um único ponto
– Objetos dependem do sistema de coordenadas utilizado
na representação

13/125
Método dos Grupos
de Transformação

14/125
Método de Grupos de Transformação

● Introduzido por Felix Klein (1849-1925)


● Geometria: espaço S (os objetos da
geometria) e um grupo G de
transformações deste espaço.
● Grupo de transformações tem
algumas propriedades invariantes.

Espaço Transformações Propriedades Geometria

15/125
Método de Grupos de Transformação

● Geometria: espaço S (os objetos da geometria) e um grupo G de


transformações deste espaço.


Cada t ∈ G, onde t: S →S, deve satisfazer às seguintes propriedades:
– Associatividade:
Dados g, h, l ∈ G, (g h) l = g (h l)

– Elemento neutro:
∃e ∈G | g e = e g = g ∀g ∈G

– Elemento Inverso:
∀ g ∈ G, ∃ g -1 | g g -1 = g -1 g = e

16/125
Método de Grupos de Transformação: Definições

● Objeto geométrico:
O é um subconjunto de S

● Propriedade geométrica:
se O goza da propriedade P, g(O) também goza de P

● Congruência:
O1 e O2 são congruentes sse ∃ g | g(O1) = O2
Ou seja, O1 pode ser transformado em O2 e vice-versa.

17/125
Método de Grupos de Transformação

● Buscar representação de S e do grupo G para implementar


modelos da geometria (modelagem geométrica).

Espaço Transformações Geometria Representação

● Transformações em Computação Gráfica: movimentos de


objetos no espaço e mudança de referencial.
● Exemplo: movimento de um corpo rígido no espaço → mudança
de posição e orientação.

18/125
Transformações e
Computação Gráfica

19/125
Transformações e Computação Gráfica

● Mudança de Coordenadas

T
y'

x'
x

20/125
Transformações e Computação Gráfica

● Mudança de Coordenadas

21/125
Transformações e Computação Gráfica

● Deformação de objetos do espaço (rígidas)


y y'
8 8
b'
7 7

6
a b 6

5 5
c'
4 4 a'
3 3

2 2

1 1
d c d'
0 0
1 2 4 5 6 8 1 2 4 5 6 8
0 3 7
x 0 3 7
x'
22/125
Transformações e Computação Gráfica

● Deformação de objetos do espaço (não rígidas)


y y'
8 8

7 7

6
a b 6
b'
5 5
a'
4 4

3 3

2 2
c'
1 1
d c d'
0 0
1 2 4 5 6 8 1 2 4 5 6 8
0 3 7
x 0 3 7
x'
23/125
Transformações e Computação Gráfica

● Movimento
y y'
8 8

7 7

6 6

5 5

4 4

3 3

2 2

1 1

0 0
1 2 4 5 6 8 1 2 4 5 6 8
0 3 7
x 0 3 7
x'
24/125
Conceitos de
Álgebra Linear

25/125
Conceitos de Álgebra Linear

n
ℝ ={( x 1, x 2, ... , x n ); x i ∈ℝ}
n
x , y , u , v : pontos no ℝ

n
Operações lineares no ℝ :
x+y=( x 1, x 2, ... , x n )+( y 1, y 2, ... , y n )

=( x 1+ y 1, x 2+ y 2, ... , x n+ y n)
λ x=λ ( x 1, x 2, ... , x n )=(λ x 1, λ x 2, ... , λ x n)

26/125
Transformações Lineares

Definição:
n n
L: ℝ →ℝ

Propriedades:
L(u+v)= L(u)+ L(v)

L(λ u)=λ L(u)

GL(n): grupo especial linear de ordem n


transformações lineares inversíveis de ℝn
27/125
Transformações Lineares

n
Base do ℝ :

e 1=(1, 0, 0,... , 0) a1= L e 1=(a 11, a 21, a 31, ... , a n1)


e 2=(0,1, 0, ... , 0) a 2=L e 2=(a 12, a 22, a 32, ... , a n2 )
⋮ ⋮
e n =(0,0,...,0 ,1) a n= L e n =(a 1n , a 2n , a 3n , ... , a nn )

∣ ∣
a11 a12 a13 ... a1n
L e = a21 a22 a 23 ... a 2n
L(x)= L e x
⋮ ⋮ ⋮ ⋱ ⋮
an1 an2 a n3 ... a nn
28/125
Transformações Lineares

Transformação Linear: representada por Matriz

∣ ∣∣ ∣
a 11 a 12 a 13 ... a 1n x1
L(x)= A x= a 21 a 22 a 23 ... a 2n x2 L()⇔ A
⋮ ⋮ ⋮ ⋱ ⋮ ⋮
a n1 a n2 a n3 ... a nn xn

Combinação: multiplicação de matrizes


(T ∘ L)(x)=T ( L(x))=(T e L e )⋅x
Soma: soma de matrizes
(T +L)(x)=T (x)+L(x)=(T e + L e )⋅x
29/125
Transformações Lineares

Transformação Linear: representada por Matriz

∣ ∣∣ ∣
a11 a12 a13 ... a1n x1
L(x)= A x= a 21 a 22 a23 ... a 2n x2 L()⇔ A
⋮ ⋮ ⋮ ⋱ ⋮ ⋮
a n1 a n2 an3 ... a nn xn

GL(n): grupo especial linear de ordem n


n
transformações lineares inversíveis de ℝ
matrizes invertíveis de ordem n

30/125
Transformações Lineares

Exemplos: mudança de base/referencial


Base F Base G
y

e2
(1,1) ∣∣
e 1=
1
0
y'
(1,1)
x' ∣ ∣
e 1 '= √
2/ 2
√ 2/ 2

e1 x
∣∣
e 2= 0
1
e 2' e 1'
∣√ ∣
e 2 '=√ − 2/ 2
2/ 2

Transformação T: transforma coordenadas de G para F


T=e 1 ' e 2 '= √ 2/ 2 −√ 2/ 2
√ 2/ 2 √ 2/ 2 ∣
31/125
Transformações Lineares

x ' =a 2 x+a 1 y
y ' =b 2 x+b1 y

T y
p ' =T×p
y'

T
x x'

∣ ∣∣
x ' a 2 a1 x
= ×
y ' b 2 b1 y ∣∣∣
32/125
Transformações Lineares

Nome Matriz (T) Equações Exemplo

Identidade ∣ ∣
1 0
0 1
x '=x
y'= y Tx'
y'

Escala
∣ ∣
cx 0
0 cy
x ' =c x x
y ' =c y y Tx'
y'

y'
Cisalhamento
vertical ∣ ∣
1 sv
0 1
x ' = x+s v y
y '= y
x'

y'
Cisalhamento
horizontal ∣ ∣
1 0
sh 1
x '=x
y ' = sh x+ y
x'

33/125
Transformações Lineares

Nome Matriz (T) Equações Exemplo

Reflexão
(em torno de x) ∣ ∣
1 0
0 −1
x '=x
y '= y T
x'
y'

T y'
Reflexão
(em torno de y) ∣ ∣
−1 0
0 1
x '=x
y '= y
x'

T
y'
Rotação ∣
cos θ −sin θ
sin θ cos θ ∣ x ' =cos θ⋅x−sin θ⋅y
y ' =sin θ⋅x+cos θ⋅y θ
x'

34/125
Transformações Ortogonais

● Produto Interno: métrica para distâncias


n

⃗ , ⃗v 〉=∑ u i v i
〈u
i=1

● Comprimento (norma) de um vetor

u∥= √〈 ⃗
∥⃗ u ,⃗
u〉 u
⃗ v

θ
● Ângulo entre dois vetores
u , ⃗v 〉
〈⃗
cos θ=
u∥∥⃗v∥
∥⃗
35/125
Transformações Ortogonais

● Produto Interno: métrica para distâncias


n

⃗ , ⃗v 〉=∑ u i v i
〈u
i=1
y
● Comprimento (norma) de um vetor d (x , y)
x
u∥= √ 〈 ⃗
∥⃗ u ,⃗
u〉

● Distância entre dois pontos


d (x , y)=∥x−y∥

36/125
Transformações Ortogonais

● Definição transformação ortogonal


n n
T : ℝ →ℝ
〈T (u) ,T (v)〉=〈u , v 〉

● Transformações ortogonais preservam a norma do espaço e


portanto a distância → Isometria
● Isometrias modificam a posição dos objetos e pontos, mas
mantêm as relações métricas (distâncias, ângulos).
● Transformações: reflexões, rotações e translações
(movimentos rígidos).
37/125
Geometria Euclideana

38/125
Geometria Euclideana

● Congruência é o conceito básico da Geometria Euclideana


● Dois objetos O1 e O2 são ditos congruentes se somente se
existir uma isometria T tal que:

T (O1 )=O2

39/125
Geometria Euclideana

Qual o grupo de isometrias do espaço Euclidiano ℝ n ?

40/125
Geometria Euclideana

● Qual o grupo de isometrias do espaço Euclidiano ℝ n ?


T : ℝn → ℝn
● Transformação é isometria se e somente se:
T (u)= L(u)+v 0
– L é uma transformação ortogonal
– v0 é um vetor fixo
● Isometria: transformação ortogonal + translação.
● Transformação T não é necessariamente linear!

41/125
Geometria Euclideana

Problemas:
● O grupo de transformações da Geometria Euclidiana não

tem uma álgebra associada: translação não é linear, não


pode ser representada por uma matriz.
● No espaço Euclidiano não há distinção clara entre ponto e
vetor.

y
?
x
u
⃗ ⃗v

42/125
Geometria Afim

43/125
Geometria Afim

● Como resolver a confusão entre pontos e vetores da


geometria Euclidiana?

● O espaço afim é constituído por um par (P, V)


– P é o espaço de pontos: x∈P
– x ∈V
V é o espaço de vetores: ⃗

● Na realidade: V = P = ℝ n

44/125
Geometria Afim

● Como V é um espaço vetorial: admite combinação linear de


vetores
n

∑ ai ⃗ui , a i ∈ℝ
i=1

● Admite também transformações lineares entre vetores:


n n
T ( ∑ ai u⃗i )= ∑ a i T ( u⃗i )
i=1 i=1

45/125
Geometria Afim

● Definimos: soma de ponto com vetor:

p+⃗
u=q ∈ P

● Subtração de pontos:
q−p=⃗
u u

p q

46/125
Geometria Afim

● Soma de ponto com vetor:

p+⃗
u=q ∈ P

● Subtração de pontos:
q−p=⃗
u

● Generalizando (combinação linear arbitrária de pontos):


n n

∑ ai pi ∈V sse ∑ ai =0
i=1 i=1

47/125
Geometria Afim

● Definimos: interpolação de pontos:

q=q 1+a (q 2−q1 ) , a ∈ [0, 1]

q
a q2
q1

48/125
Geometria Afim

● Interpolação de pontos:

q=q 1+a (q 2−q1 ) , a ∈ [0, 1]

● De outra forma:

q=a 1 q 1+a 2 q 2 com a 1 , a 2 ∈ [0, 1] , a 1+a 2=1

● Combinação afim de pontos:


n n

∑ ai pi ∈P sse ∑ ai =1
i=1 i=1

49/125
Geometria Afim

● Conceito afim: equação paramétrica da reta (que passa pelos


pontos a e b)

r (t )=a+t (b−a)
t ∈ℝ
r (t )=(1−t )a+t (b)

● Uma reta é um conjunto de pontos!

50/125
Geometria Afim

Resumindo:
● Vetores sempre podem ser combinados (combinação linear):

∑ ai ⃗ui , a i ∈ℝ
i=1

● Pontos podem ser combinados em duas situações:


n

∑ ai pi , a i ∈ℝ
i=1
n
se ∑ ai =0 combinação resulta num vetor
i=1
n
se ∑ ai =1 combinação resulta num ponto
i=1
51/125
Transformações Afim

● Transformação T : A1 → A2 entre dois espaços afim


A1 = (P1, V1) e A2 = (P2, V2) é afim sse:

1) T preserva vetores, além disso T é transformação linear


2) T preserva pontos, e além disso: T (p+⃗
v )=T (p)+T (⃗v )

● Generalizando (2): T preserva combinações afim de pontos


n n n

∑ ai =1 ⇒ T (∑ ai pi ) = ∑ ai T (pi )
i=1 i=1 i=1

52/125
Transformações Afim

● T preserva combinações afim de pontos


n n n

∑ ai =1 ⇒ T (∑ ai pi ) = ∑ ai T (pi )
i=1 i=1 i=1

● T preserva retas:

r(t) = (1 - t) a + t b reta que passa por a e b

T (r(t)) = T ((1 – t) a + t b)
= T((1 – t) a) + T (t b)
= (1 – t) T(a) + t T (b) reta que passa por T(a) e T(b)

53/125
Transformações Afim

● Retas paralelas: r passa por a,b e s passa por c,d


b – a = λ (d – c)
r(t) = (1 - t) a + t b s(q) = (1 - q) d + q c
T (r(t)) = T (λ (s(q))
T ((1 - t) a + t b) = T (λ ((1 - q) d + q c))
T ((1 - t) a + t b) = λT ((1 - q) d + q c)
T ((1 - t) a) + T(t b)) = λ(T ((1 - q) d) + T(q c))
(1 - t) T (a) + t T(b) = λ((1 - q) T(d) + q T(c))

● T preserva o paralelismo: reta que passa por T(a),T(b) é


paralela à que passa por T(c),T(d)
54/125
Transformações Afim

● Translação é uma transformação afim? T (p)=p+⃗


v0
● Dada uma combinação afim de pontos: t1u + t2v, t1+t2=1
T (t 1 u+t 2 v)=t 1 u+t 2 v+⃗v 0
=t 1 u+t 2 v+(t 1+t 2 )⃗v 0
=t 1 u+t 2 v+t 1 ⃗v 0+t 2 ⃗v 0
=t 1 (u+⃗v 0 )+t 2 (v+⃗v 0 )
=t 1 T (u)+t 2 T (v)
● Translação preserva combinações afim de pontos: é
transformação afim!

55/125
Transformações Afim

● Transformação T (x)= L(x)+⃗


v 0 , onde L é linear é afim?
● Dada uma combinação afim de pontos: t1u + t2v, t1+t2=1

T (t 1 u+t 2 v)= L(t 1 u+t 2 v)+⃗v0


=t 1 L(u)+t 2 L(v)+(t 1+t 2)⃗v 0
=t 1 ( L(u)+⃗v 0)+t 2 ( L(v)+⃗v0 )
=t 1 T (u)+t 2 T (v)

● Preserva combinações afim de pontos: é transformação afim!

56/125
Transformações Afim

● Transformação T (x)= L(x)+⃗ v 0 , onde L é uma


transformação ortogonal é uma isometria!

● Transformações rígidas (isometrias) que constituem o grupo


de transformações da geometria Euclidiana são
transformações afim!

57/125
Coordenadas Afim

● A é um espaço afim de dimensão n


● o é um ponto no espaço A
● {⃗v1, ⃗v 2, . . . , ⃗v n } é uma base de A
● F =(o , {⃗v1, ⃗v 2, . . . , ⃗v n }) é um referencial de A (define um
sistema de coordenadas no espaço afim)

p=o+⃗v ∈ A
⃗v =c 1 ⃗v1+ c 2 ⃗v 2+ . . .+c n ⃗v n

p=o + c 1 ⃗v1 + c 2 ⃗v 2 + . . . + c n ⃗v n

58/125
Coordenadas Afim

● n+1 escalares 1, c1, c2, . . ., cn são as coodenadas do ponto p


no referencial F.
● Coordenadas indicadas por (c1, c2, . . ., cn, 1)
● Geometricamente:

59/125
Transformações Afim

F =(⃗
u1 , ⃗
u2 , . . . , ⃗
un , o)
● Considere os referenciais:
G=(⃗v 1 , ⃗v 2 , . . . , ⃗v n , o ')

● Considere o ponto: x= x 1 ⃗
u1+ x 2 ⃗u2+ . . .+ x n ⃗un+o
● Seja T uma transformação linear
n n
T (⃗
u j) = ∑ aij ⃗vi T (o) = ∑ ai n+1 ⃗vi
i=1 i=1
n n
x=∑ x j u
⃗ j +o ⇒ T (x)=∑ x j T ( u⃗j )+T (o)
j=1 j=1
n n
=∑ ( ∑ a ij x j +a i n+1 ) v⃗i
i=1 j=1

60/125
Transformações Afim

n n
x=∑ x j u
⃗ j +o ⇒ T (x)=∑ x j T ( u⃗j )+T (o)
j=1 j=1
n n
=∑ ( ∑ a ij x j +a i n+1 ) v⃗i
i=1 j=1

∣ ∣∣ ∣
a11 a 12 ... a 1n a 1 n+1 x1
a 21 a 22 ... a 2n a 2 n+1 x2
T (x)= ⋮ ⋮ ⋱ ⋮ ⋮ ⋮
a n1 a n2 ... a nn a n n+1 xn
0 0 ... 0 1 1

61/125
Tipos de Transformações Afim 2D

Nome Matriz (T) Equações Exemplo

Identidade
∣ ∣
1 0 0
0 1 0
0 0 1
x '=x
y'= y T
x'
y'

∣ ∣ T
cx 0 0 x ' =c x x y'
Escala 0 cy 0 y ' =c y y
0 0 1 x'

Rotação
∣cos θ −sin θ 0
sin θ cos θ 0
0 0 1 ∣ x ' =cos θ⋅x−sin θ⋅y
y ' =sin θ⋅x+cos θ⋅y θ
T
x'
y'

y'

∣ ∣
1 0 tx x ' = x+t x
Translação 0 1 ty
0 0 1
y ' = y+t y
T
x'

62/125
Tipos de Transformações Afim 2D

Nome Matriz (T) Equações Exemplo

∣ ∣
1 sv 0 x ' = x+s v y y'
Cisalhamento
vertical 0 1 0 y'= y
0 0 1 x'

∣ ∣
1 0 0
Cisalhamento x '=x y'
horizontal sh 1 0
y ' = sh x+ y
0 0 1
x'

O produto de transformações afim produz uma


transformação afim

63/125
Composição de Transformações

Composição de transformações é equivalente à multiplicação


de matrizes.

 x'   1 0 tx  cos   sin  0  sx 0 0   x 


 y '    0 1 ty   sin  cos  0  0 sy 0   y 
 w'  0 0 1   0 0 1  0 0 1   w

p' = Ttranslação ◦ Trotação ◦ Tcisalhamento ◦ p

64/125
Composição de Transformações

Composição de transformações é equivalente à multiplicação


de matrizes.

 x'   1 0 tx  cos   sin  0  sx 0 0   x 


 y '    0 1 ty   sin  cos  0  0 sy 0   y 
 w'  0 0 1   0 0 1  0 0 1   w

p' = Ttranslação ◦ Trotação ◦ Tcisalhamento ◦ p

65/125
Composição de Transformações

Ordem das multiplicações é importante: operação não é


comutativa!

 x'   1 0 tx  cos   sin  0  sx 0 0   x 


 y '    0 1 ty   sin  cos  0  0 sy 0   y 
 w'  0 0 1   0 0 1  0 0 1   w

p' = Ttranslação ◦ Trotação ◦ Tcisalhamento ◦ p

p' = (Ttranslação * (Trotação * (Tcisalhamento * p)))


p' = (Ttranslação * Trotação * Tcisalhamento ) * p)
66/125
Composição de Transformações
Exemplo: girar um objeto sobre seu centro
4 .5 4 .5

4 4

3 .5 3 .5

∣ ∣
3 3

2 .5 1 0 −3.5 2 .5

1 .5
0 1 −0.5 2

1 .5

1 0 0 1 1

0 .5 0 .5

0 0

-0 .5 -0 .5

-1 -1
-1 -0 .5 0 0 .5 1 1 .5 2 2 .5 3 3 .5 4 4 .5 -1 -0 .5 0 0 .5 1 1 .5 2 2 .5 3 3 .5 4 4 .5

4 .5

3 .5
4 .5

3 .5
∣ cos 45o −sin 45o 0
sin 45
0
o
cos 45
0
o
0
1 ∣
∣ ∣
3 3

2 .5 1 0 3.5 2 .5

1 .5
0 1 0.5 2

1 .5

1 0 0 1 1

0 .5 0 .5

0 0

-0 .5 -0 .5

-1 -1
-1 -0 .5 0 0 .5 1 1 .5 2 2 .5 3 3 .5 4 4 .5 -1 -0 .5 0 0 .5 1 1 .5 2 2 .5 3 3 .5 4 4 .5

67/125
Composição de Transformações
Exemplo: girar um objeto sobre seu centro

∣ ∣∣ ∣∣ ∣
6
o o
1 0 3.5 cos 45 −sin 45 0 1 0 −3.5 5

0 1 0.5 sin 45o cos 45o 0 0 1 −0.5 4

0 0 1 0 0 1 0 0 1 3

6 2

5 1

4 0

3 -1
-1 0 1 2 3 4 5 6

1 6

0 5

-1 4
-1 0 1 2 3 4 5 6

∣ ∣∣ ∣∣ ∣
o o
1 0 −3.5 cos 45 −sin 45 0 1 0 3.5 1

0 1 −0.5 sin 45o cos 45o 0 0 1 0.5 0

0 0 1 0 0 1 0 0 1 -1
-1 0 1 2 3 4 5 6

68/125
Geometria Projetiva

69/125
Perspectiva
Representação dos objetos em seus tamanhos e posições
"corretas", tal qual a visão humana supostamente
os compreenderia, a partir de um observador.

70/125
Perspectiva

Pontos de fuga: onde retas paralelas se encontram

71/125
Perspectiva

Pontos de fuga: onde retas paralelas se encontram

Ponto de fuga
(no infinito)

Ponto de fuga Ponto de fuga

72/125
Perspectiva

Pontos de fuga: onde retas paralelas se encontram

Ponto de fuga
(no infinito)

Ponto de fuga Ponto de fuga

73/125
Projeção Perspectiva

Plano de Projeção
Raio Projetante

Ponto de Fuga
(imagem de um
ponto ideal)

Centro de Projeção

74/125
Espaço Projetivo

● Seja O∈ℝ n+1 e Π⊂ℝ n+1 um hiperplano, onde O∉Π


● A projeção cônica de P∈ℝ n+1 , P≠O em Π é o ponto P'
onde a reta r, definida por OP, intersecta Π

Π
P P1 P2 P' n+1
O origem de ℝ
r

Q'
s
Q1 Q2
Q
75/125
Partição de Pontos no Espaço Projetivo

n n+1
( x 1, x 2, ... , x n , x n+1 )∈RP ⇔(x , x n+1)∈ℝ

n n
RP ={(x ,1)∪(x , 0)}∈RP
Ponto
Ponto ideal
afim

(x,0)
P P1 P2 O
(x,1)

z=1 z=0
Hiperplano afim Hiperplano projetivo 76/125
Partição de Pontos no Espaço Projetivo

● Uma reta no plano afim define um plano passando pela


origem do espaço projetivo
● Duas retas no plano afim se encontram num ponto
(projetivo) ideal: ponto no infinito

77/125
Coordenadas Homogêneas

● Todos os pontos de r representam o mesmo ponto projetivo


P' = (x1, x2, …, xn+1) representa P
P1 = λP' = λ(x1, x2, …, xn+1), λ ≠ 0, também representa P

Π
P P1 P2 P'
r

Q'
s
Q
Q1 2
Q
78/125
Coordenadas Homogêneas

● Coordenadas de P' e λP' representam o mesmo ponto


projetivo: coordenadas homogêneas
(x1, x2, …, xn+1) = λ(x1, x2, …, xn+1), λ ≠ 0
● Normalmente trabalhamos com pontos sobre o plano afim,
i.e., xn+1=1
● Para normalizar coordenadas homogêneas:
x1 x1 xn
( x 1, x 2, ... , x n , x n+1 )=( , , ... , , 1)
x n+1 x n+1 x n+1

79/125
Transformações
Projetivas

80/125
Transformações Projetivas

● Transformam pontos de RPn em pontos de RPn


● Do ponto de vista Euclidiano: transformam retas que
n+1
passam pela origem de ℝ em outras retas que passam
pela origem
n+1 n+1
● Transformação linear invertível T : ℝ →ℝ
● Representada por matriz de ordem n+1
● T é definida a menos de um escalar não nulo

T(λP) = λT(P) = T(P)

81/125
Análise da Transformação Projetiva em RP2

Anatomia da matriz de transformação projetiva:

∣ ∣
a c ∣ t1
b d ∣ t2
M=
− − − −
p1 p 2 ∣ s
Blocos:
linear perspectiva translação escala

A= ∣ ∣
a c
b d
P=∣p 1 p 2∣ T=
∣∣
t1
t2
S =∣s∣

82/125
Análise da Transformação Projetiva em RP2

∣ ∣ ∣ ∣ ∣∣
a c ∣ t1 a c 0
A= T=
b d ∣ t2 b d 0
M=
− − − −
p1 p 2 ∣ s P=∣0 0∣ S =∣1∣

∣ ∣
a c ∣ 0
b d ∣ 0
M=
− − − −
0 0 ∣ 1

83/125
Análise da Transformação Projetiva em RP2

∣ ∣ ∣ ∣ ∣∣
a c ∣ t1 1 0 t1
A= T=
b d ∣ t2 0 1 t2
M=
− − − −
p1 p 2 ∣ s P=∣0 0∣ S =∣1∣

∣ ∣
1 0 ∣ t1
M= 0 1 ∣ t 2
− − − −
0 0 ∣ 1
84/125
Análise da Transformação Projetiva em RP2

∣ ∣ ∣ ∣ ∣∣
a c ∣ t1 a c t1
A= T=
b d ∣ t2 b d t2
M=
− − − −
p1 p 2 ∣ s P=∣0 0∣ S =∣1∣

∣ ∣
a c ∣ t1
M= b d ∣ t 2
− − − −
0 0 ∣ 1
85/125
Análise da Transformação Projetiva em RP2

∣ ∣ ∣ ∣ ∣∣
a c ∣ t1 1 0 0
A= T=
b d ∣ t2 0 1 0
M=
− − − −
p1 p 2 ∣ s P=∣0 0∣ S =∣1∣

∣ ∣
1 0 ∣ 0
0 1 ∣ 0
M=
− − − −
0 0 ∣ s

86/125
Análise da Transformação Projetiva em RP2

∣ ∣ ∣ ∣ ∣∣
a c ∣ t1 1 0 0
A= T=
b d ∣ t2 0 1 0
M=
− − − −
p1 p 2 ∣ s P=∣p 1 p 2∣ S =∣1∣

∣ ∣
1 0 ∣ 0
0 1 ∣ 0
M=
− − − −
p1 p2 ∣ 1

87/125
Análise da Transformação Projetiva em RP2

∣ ∣∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣∣ ∣ ∣ ∣ ∣ ∣
1 0 0 x x 1/ p1 1 0 0 0 0 0
0 1 0⋅0 = 0 = 0 0 1 0 ⋅ y = y = 1/ p 2
p1 p 2 1 0 x⋅p1 1 p1 p 2 1 0 y⋅p 2 1

1 1
x⋅p 1=1 ⇒ x= y⋅p 2 =1⇒ y=
p1 p2
D'
D C
C'

B'
A B A'

88/125
Coeficientes da Transformação Projetiva em RP2

∣ ∣∣ ∣
a b c x
T ( x , y , 1)= d e f ⋅y
g h i 1

=(ax +by +c , dx +ey +f , gx +hy +i )

∣ ∣
ax +by +c

∣ax +by +c
∣gx +hy +i
= dx +ey +f = dx +ey+f
gx +hy +i gx +hy +i
1

89/125
Exemplo de Transformação Projetiva

∣ ∣
1 0 0
p3 p2 T= 0 1 0
1 1

1/2 0 1
0 .8 0 .8

0 .6 0 .6

0 .4 0 .4

0 .2 0 .2

0
p0 p1 0

0 0 .2 0 .4 0 .6 0 .8 1 0 0 .2 0 .4 0 .6 0 .8 1

90/125
Exemplo de Transformação Projetiva

∣ ∣
p3' 1 0 0
p3 p2 T= 0 1 0
1 1

1/2 0 1
0 .8 0 .8
p2'
0 .6 0 .6

0 .4 0 .4

0 .2 0 .2

p0' p1'
0
p0 p1 0

0 0 .2 0 .4 0 .6 0 .8 1 0 0 .2 0 .4 0 .6 0 .8 1

∣∣ ∣∣ ∣∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣
0 0 1 1 1 2 /3 0.67
T (p0 )=T 0 = 0 T (p1 )=T 0 = 0 = 0 = 0 = 0
1 1 1 1/2+1 3/ 2 1 1

∣∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣∣ ∣∣
1 1 1 2/3 0.67 0 0
T (p2 )=T 1 = 1 = 1 = 2 / 3 = 0.67 T (p3 )=T 1 = 1
1 1/ 2+1 3/ 2 1 1 1 1
91/125
Exemplo de Transformação Projetiva

∣ ∣
p3' 1 0 0
p3 p2 T= 0 1 0
1 1

1/2 0 1
0 .8 0 .8
p2'
0 .6 0 .6

p4 p5 p4'
0 .4 0 .4
p5'
0 .2 0 .2

p0' p1'
0
p0 p1 0

0 0 .2 0 .4 0 .6 0 .8 1 0 0 .2 0 .4 0 .6 0 .8 1

∣ ∣∣ ∣ ∣∣∣ ∣∣ ∣∣ ∣∣ ∣
0 0 1 1 1 2 /3 0.67
T (p4 )=T 1/ 2 = 1 /2 T (p5 )=T 1/ 2 = 1/ 2 = 1/2 = 1/3 = 0.33
1 1 1 1 /2+1 3/2 1 1

92/125
1 .6

Exemplo
1 .4 de Transformação Projetiva
1 .2

∣ ∣
1 1 0 0
T= 0 1 0
0 .8
1/2 0 1
0 .6

0 .4

0 .2
pfx'
0

0 0 .2 0 .4 0 .6 0 .8 1 1 .2 1 .4 1 .6 1 .8 2

93/125
1 .6

Exemplo
1 .4 de Transformação Projetiva
1 .2

∣ ∣
1 1 0 0
T= 0 1 0
0 .8
1/2 0 1
0 .6

0 .4

0 .2
pfx'
0

0 0 .2 0 .4 0 .6 0 .8 1 1 .2 1 .4 1 .6 1 .8 2

∣∣ ∣ ∣ ∣ ∣ ∣∣
x x x 2
T (pfx )=T y = y = 0 = 0
0 x/2 x/2 1

94/125
Exemplo de Transformação Projetiva

∣ ∣
1 0 0
p3 p2 T= 0
1 1 1 0
1/2 1/2 1
0 .8 0 .8 p3'
0 .6 0 .6 p2'
0 .4 0 .4

0 .2 0 .2

p0' p1'
0
p0 p1 0

0 0 .2 0 .4 0 .6 0 .8 1 0 0 .2 0 .4 0 .6 0 .8 1

∣∣ ∣∣ ∣∣ ∣ ∣ ∣∣ ∣ ∣ ∣ ∣
0 0 1 1 1 1/2 0.5
T (p0 )=T 0 = 0 T (p2 )=T 1 = 1 = 1 = 1/2 = 0.5
1 1 1 1/ 2+1/ 2+1 2 1 1

∣∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣∣ ∣ ∣ ∣ ∣ ∣ ∣
1 1 2 /3 0.67 0 0 0 0
T (p1 )=T 0 = 0 = 0 = 0 T (p3 )=T 1 = 1 = 2 /3 = 0.67
1 3/ 2 1 1 1 3/2 1 1
95/125
Exemplo de Transformação Projetiva

∣ ∣
2 2 1 0 0
1 .5 1 .5 T= 0 1 0
p3 p2 p3' 1/2 1/2 1
1 1
p2'
0 .5 0 .5

0 0

-0 .5 -0 .5

-1
p0 p1 -1 p0'
p1'
-1 .5 -1 .5

-2 -2
-2 -1 .5 -1 -0 .5 0 0 .5 1 1 .5 2 -2 -1 .5 -1 -0 .5 0 0 .5 1 1 .5 2

∣∣∣ ∣∣∣ ∣∣ ∣ ∣∣ ∣
−1 −1 −1 1 1 1/2
T (p3 )=T 1 = 1 = 1 T (p2 )=T 1 = 1 = 1/2
1 −1/2+1/2+1 1 1 1/2+1/ 2+1 1

∣∣∣ ∣∣∣ ∣∣∣ ∣∣∣


1 1 1 −1 −1 −1
T (p1 )=T −1 = −1 = −1 T (p0 )=T −1 = −1 = −1
1 1 /2−1/2+1 1 1 −1 /2−1/2+1 0
96/125
Cálculo dos coeficientes
da transformação
projetiva

97/125
Coeficientes da Transformação Projetiva

y y'

p1 p2 p2'
p1 '

T
p3 '
p0 p3 p0'

x x'

98/125
Coeficientes da Transformação Projetiva

∣ ∣∣ ∣
a b c x
T ( x , y , 1)= d e f ⋅y
g h 1 1

∣ ∣
ax+by+c

∣ ∣ ∣∣
ax+by+c gx+hy+1 x'
= dx+ey+ f = dx+ey+ f = y '
gx+hy+1 gx+hy+1 1
1

99/125
Coeficientes da Transformação Projetiva

∣ ∣∣ ∣
a b c x
T ( x , y , 1)= d e f ⋅y
g h 1 1

∣ ∣
ax+by+c

∣ ∣ ∣∣
ax+by+c gx+hy+1 x'
= dx+ey+ f = dx+ey+ f = y '
gx+hy+1 gx+hy+1 1
1
Sistema de equações:
x k ' = x k a+ y k b+c− x k x k ' g− y k x k ' h
y k ' =x k d + y k e+ f − x k y k ' g− y k y k ' h
100/125
Coeficientes da Transformação Projetiva

y y'
1 8
p1 p2
7
p2'
0,75 k (xk, yk) (xk', yk') 6
5
p1'
0 (0, 0) (2,1)
0,5
1 (0, 1) (3, 5) 4

2 (1, 1) (6, 6) 3
0,25 3 (1, 0) (7, 2) 2
p3 '
p0 p3
1 p0'
0 0
0,5 1 1 2 4 5 6 8
0 0,25 0,75
x 0 3 7
x'
x k ' = x k a+ y k b+c− x k x k ' g− y k x k ' h
y k ' =x k d + y k e+ f − x k y k ' g − y k y k ' h

101/125
Coeficientes da Transformação Projetiva

x k ' = x k a+y k b+c+0 d +0 e+0 f − x k x k ' g− y k x k ' h

y k ' =0 a+0 b+0 c+x k d +y k e +f − x k y k ' g − y k y k ' h

∣∣
a
b
c
d
Forma matricial: e
f

∣ ∣∣
xk '
yk '
x
= k
0
yk
0
1
0
0
xk
0
yk
0 − xk xk ' − yk xk '
1 − xk yk ' − yk yk ' ∣ g
h

102/125
Sistema de Equações Lineares

∣ ∣ Observações
xk '
yk '
L


xk yk 1 0 0 0 −x k x k ' − y k x k '
∣ A
0 0 0 xk yk 1 −x k y k ' − y k y k ' Coeficientes
(sistema de equações)

∣∣
a
b
c
d x L= A⋅x
e Coeficientes
f (transformação projetiva)
g
h
103/125
Sistema de Equações Lineares

L= A⋅x
Observações Coeficientes
L A

∣∣ ∣ ∣
x0' x0 y0 1 0 0 0 −x 0 x0 ' − y0 x0 '
y0 ' 0 0 0 x0 y0 1 −x 0 y0 ' − y0 y0 '
x1 ' x1 y1 1 0 0 0 −x 1 x1 ' − y1 x1 '
y1 ' 0 0 0 x1 y1 1 −x 1 y1 ' − y1 y1 '
⋮ ⋮
x n−1 ' x n−1 y n−1 1 0 0 0 −x n−1 x n−1 ' − y n−1 x n−1 '
y n−1 ' 0 0 0 x n−1 y n−1 1 −x n−1 y n−1 ' − y n−1 y n−1 '

104/125
Método dos Mínimos Quadrados: (k ≥ 4)

A⋅x=L
t t
A ⋅A⋅x= A ⋅L
t −1 t t −1 t
( A ⋅A) A ⋅A⋅x=( A ⋅A) A ⋅L
t −1 t
x=( A ⋅A) A ⋅L
105/125
Método dos Mínimos Quadrados: (k ≥ 4)
n
A⋅x=y ∑ Aij x j = y i (i=1,... , m)
j=1

Erro médio quadrático:


m n
2
S (x)=∑ ∣y i −∑ Aij x j∣ =∥y− A x∥
2

i=1 j=1
2 T
S (x)=∥y− A x∥ =(y− A x) (y− A x)
T T T T T T
=y y−x A y−y A x+x A A x
T T T T T
=y y−2 x A y+x A A x

106/125
Método dos Mínimos Quadrados: (k ≥ 4)
n
A⋅x=y ∑ Aij x j = y i (i=1,... , m)
j=1

Erro médio quadrático:


2 T T T T T
S (x)=∥y− A x∥ =y y−2 x A y+x A A x

Minimizando o erro médio quadrático: (derivada em x = 0)


T T
−2 A y+2( A A)x=0
T T
−A y+( A A)x=0
T −1 T
x=( A A) A y

107/125
Exemplo: transformação entre dois quadriláteros

y y'
1 8
p1 p2
7
p2'
0,75 6
p1 '
5

0,5 4

0,25 2
p3 '
p0 p3
1 p0'
0 0
0,25 0,5 1 1 2 4 5 6 8
0 0,75
x 0 3 7
x'

108/125
Exemplo: transformação entre dois quadriláteros

y y'
1 8
p1 p2
7
p2'
0,75 k (xk, yk) (xk', yk') 6
5
p1'
0 (0, 0) (2,1)
0,5
1 (0, 1) (3, 5) 4

2 (1, 1) (6, 6) 3
0,25 3 (1, 0) (7, 2) 2
p3 '
p0 p3
1 p0'
0 0
0,5 1 1 2 4 5 6 8
0 0,25 0,75
x 0 3 7
x'

109/125
Composição da Matriz dos Coeficientes

L= A⋅x
Observações Coeficientes
L A

∣∣ ∣ ∣
x0 ' x0 y0 1 0 0 0 −x 0 x 0 ' −y0 x0 '
y0 ' 0 0 0 x0 y0 1 −x 0 y 0 ' −y0 y0 '
x1 ' x1 y1 1 0 0 0 −x 1 x 1 ' − y1 x1 '
y1 ' 0 0 0 x1 y1 1 −x 1 y 1 ' − y1 y1 '
x2 ' x2 y2 1 0 0 0 −x 2 x 2 ' −y2 x2 '
y2 ' 0 0 0 x2 y2 1 −x 2 y 2 ' −y2 y2 '
x3 ' x3 y3 1 0 0 0 −x 3 x 3 ' −y3 x3 '
y3 ' 0 0 0 x3 y3 1 −x 3 y 3 ' −y3 y3 '

110/125
Composição da Matriz dos Coeficientes

k (xk, yk) (xk', yk')


L= A⋅x 0 (0, 0) (2,1)
1 (0, 1) (3, 5)
2 (1, 1) (6, 6)
3 (1, 0) (7, 2)
Observações
L

∣∣ ∣
x0 '
2
y0 '
1
x1 '
3
y1 ' 5
x2 ' 6
y2 ' 6
x3 ' 7
y3 ' 2

111/125
Composição da Matriz dos Coeficientes

k (xk, yk) (xk', yk')


L= A⋅x 0 (0, 0) (2,1)
1 (0, 1) (3, 5)
2 (1, 1) (6, 6)
3 (1, 0) (7, 2)
Coeficientes
A

∣ ∣∣
x0 y0 1 0 0 0 −x 0 x 0 ' −y0 x0 '


0 0 1 0 0 0 0 0
0 0 0 x0 y0 1 −x 0 y 0 ' −y0 y0 ' 0 0 0 0 0 1 0 0
x1 y1 1 0 0 0 −x 1 x 1 ' − y1 x1 ' 0 1 1 0 0 0 0 −3
0 0 0 x1 y1 1 −x 1 y 1 ' − y1 y1 ' 0 0 0 0 1 1 0 −5
x2 y2 1 0 0 0 −x 2 x 2 ' −y2 x2 ' 1 1 1 0 0 0 −6 −6
0 0 0 x2 y2 1 −x 2 y 2 ' −y2 y2 ' 0 0 0 1 1 1 −6 −6
x3 y3 1 0 0 0 −x 3 x 3 ' −y3 x3 ' 1 0 1 0 0 0 −7 0
0 0 0 x3 y3 1 −x 3 y 3 ' −y3 y3 ' 0 0 0 1 0 1 −2 0

112/125
Resultado: Mínimos Quadrados

x=( At⋅A)−1⋅At⋅L

t
x=∣3.92 2.84 2.0 0.69 7.07 1.0 −0.15 0.61∣

∣ ∣ ∣ ∣∣ ∣∣ ∣
3.92 2.84 2.0 xk ' ' 3.92 2.84 2.0 x k
T= 0.69 7.07 1.0 y k ' ' = 0.69 7.07 1.0 ⋅ y k
−0.15 0.61 1 z k ' ' −0.15 0.61 1 1

∣ ∣∣ ∣∣ ∣
xk ' ' x k ' ' / zk ' ' xk '
yk ' ' = yk ' ' / z k ' ' = yk '
zk ' ' z k ' ' / zk ' ' 1
113/125
Resultado: Mínimos Quadrados

x=( At⋅A)−1⋅At⋅L

t
x=∣3.92 2.84 2.0 0.69 7.07 1.0 −0.15 0.61∣

∣ ∣ ∣ ∣∣ ∣∣ ∣
3.92 2.84 2.0 xk ' ' 3.92 2.84 2.0 x k
T= 0.69 7.07 1.0 y k ' ' = 0.69 7.07 1.0 ⋅ y k
−0.15 0.61 1 z k ' ' −0.15 0.61 1 1

∣ ∣∣ ∣∣ ∣
xk ' ' x k ' ' / zk ' ' xk '
yk ' ' = yk ' ' / z k ' ' = yk '
zk ' ' z k ' ' / zk ' ' 1
114/125
Resultado: Mínimos Quadrados

y y'
1 8
p1 p2
7
p2'
0,75 k (xk, yk) (xk', yk') 6
5
p1'
0 (0, 0) (2,1)
0,5
1 (0, 1) (3, 5) 4

2 (1, 1) (6, 6) 3
0,25 3 (1, 0) (7, 2) 2
p3 '
p0 p3
1 p0'
0 0
0,5 1 1 2 4 5 6 8
0 0,25 0,75
x 0 3 7
x'

∣ ∣∣ ∣∣ ∣
xk ' ' 3.92 2.84 2.0 x k
y k ' ' = 0.69 7.07 1.0 ⋅ y k
z k ' ' −0.15 0.61 1 1
115/125
Teorema Fundamental da Geometria Projetiva

y y'

p1 p2 p2'

T p1 '

−1
T
p3 '
p0 p3 p0'

x x'
T é único (só uma solução)
116/125
Teorema Fundamental da Geometria Projetiva

−1
T =T 2 ∘T 1

−1
T 1
Q1 T2 Q2
T1

T : Q1 → Q 2
T é único (só uma solução)
117/125
Teorema Fundamental da Geometria Projetiva

T : Q1 → Q 2

−1
T 1
Q1 T2 Q2
T1

Dados dois referenciais projetivos existe uma única


transformação projetiva T que transforma pontos de
um referencial para outro.
118/125
Tipos de Projeções

Projeções planares: em um plano de projeção (2D)

Projeções Cilíndricas Projeções Cônicas


(Paralelas) (Perspectiva)

119/125
Tipos de Projeções

Projeções planares: em um plano de projeção (2D)

Projeções Planares

Paralelas Perspectiva
1 ponto
Oblíquas Ortográficas
2 pontos
Cavalier Topo 3 pontos
Cabinet Frente
Outras Lado
Outras

120/125
Tipos de Projeções

Projeções Paralelas Ortográficas:


- Raios de projeção são perpendiculares ao plano de projeção

Ortográfica Obliqua

Projeções Paralelas Oblíquas:


- Raios de projeção não são perpendiculares ao plano de projeção

121/125
Tipos de Projeções

Projeções Paralelas Ortográficas:


- Raios de projeção são perpendiculares ao plano de projeção

Frente Lado

∣ ∣∣ ∣ ∣
x' 1 0 0 0 x
y' 0 1 0 0 y
= ⋅
z' 0 0 0 0 z
1 0 0 0 1 1 Topo Arbitrário
(rotação)
122/125
Tipos de Projeções

Projeções Paralelas Oblíquas:


- Raios de projeção não são perpendiculares ao plano de projeção

1/a = tan(α)
z/b = 1/a
b=za
x = z a cos(ϕ)
y = z a sin(ϕ)

∣ ∣∣ ∣ ∣∣ ∣
x' 1 0 a cos (ϕ) 0 x x+z a cos (ϕ)
y' 0 1 a sin (ϕ) 0 y y+ z a sin (ϕ)
= ⋅ =
z' 0 0 0 0 z 0
1 0 0 0 1 1 1

123/125
Tipos de Projeções

Projeções Perspectivas:
- Transformação perspectiva seguida de projeção ortográfica

1 ponto de fuga 2 pontos de fuga 3 pontos de fuga

124/125
FIM

125/125

Вам также может понравиться