Vous êtes sur la page 1sur 35

Geometria Afim

Geometria Euclidiana

Transformaes

Visualizao por Computador: Teoria,


Prtica e Aplicaes
Noes de Geometria e lgebra Linear

Claudio Esperana
Programa de Engenharia de Sistemas e Computao
COPPE / UFRJ

Master of Information Management, 2008

3D

Geometria Afim

Geometria Euclidiana

Sumrio

Geometria Afim

Geometria Euclidiana

Transformaes

3D

Transformaes

3D

Geometria Afim

Geometria Euclidiana

Transformaes

Geometria Afim

Estudo de propriedades geomtricas preservadas por


transformaes afim
Transformao afim = transformaes lineares + translaes
Transformao linear = funo entre dois espaos de vetores
que preservam soma de vetores e multiplicao por escalares

3D

Geometria Afim

Geometria Euclidiana

Pontos e Vetores

Transformaes

3D

Geometria Afim

Geometria Euclidiana

Transformaes

Pontos e vetores

Ponto: Denota posio no plano


Vetor: Denota deslocamento, isto , inclui a noo de direo
e magnitude
Em 2D ambos so representados em coordenadas cartesianas
usando dois escalares:
P = [xP , yP ]
~v = [xv , yv ]
Pontos e vetores no so a mesma coisa.

3D

Geometria Afim

Geometria Euclidiana

Transformaes

Operaes: Soma/Subtrao de vetores

3D

Geometria Afim

Geometria Euclidiana

Operaes: Subtrao de pontos

Transformaes

3D

Geometria Afim

Geometria Euclidiana

Transformaes

Operaes: Multiplicao por escalar

3D

Geometria Afim

Geometria Euclidiana

Transformaes

Operaes com pontos e vetores

Soma/subtrao de vetores:
~t = ~v + ~u
~t ~u = ~v
Subtrao de pontos / Soma de ponto e vetor:
~v = P Q
Q + ~v = P
Multiplicao de vetor e escalar:
~t = ~u + ~u = 2~u
No faz sentido:
Soma de pontos
Multiplicao de ponto e escalar

Exceo: combinaes afim

3D

Geometria Afim

Geometria Euclidiana

Combinaes afim
Maneira especial de
combinar pontos:
1 P1 + 2 P2 + + n Pn ,
X

i = 1

Na verdade, temos apenas


multiplicao de escalares
por vetores
Para 2 pontos P e Q
poderamos ter uma
combinao afim
R = (1)P+Q = P+(QP)

Transformaes

3D

Geometria Afim

Geometria Euclidiana

Combinao convexa

uma combinao afim onde


todos os coeficientes so no
negativos
Usa-se esse nome porque qualquer
ponto que uma combinao
convexa de n outros pontos
pertence ao fecho convexo desses
pontos

Transformaes

3D

Geometria Afim

Geometria Euclidiana

Transformaes

Geometria Euclidiana

Extenso da geometria afim pela adio de um operador


chamado produto interno
Produto interno um operador que mapeia um par de vetores
em um escalar. Tem as seguintes propriedades:
Positividade : (u, u) 0 e (u, u) = 0 sse u = 0
Simetria: (u, v) = (v, u)
Bilinearidade: (u, v + w) = (u, v) + (u, w) e (u, v) = (u, v)

3D

Geometria Afim

Geometria Euclidiana

Transformaes

Produto Escalar
Normalmente usamos o produto escalar como operador de
produto interno:
~v ~u =

d
X

vi ui ,

i=1

onde d a dimenso do espao


Comprimento de um vetor definido como:

|~v | = ~v ~v
Vetor unitrio (normalizado):
v =

~v
|~v |

3D

Geometria Afim

Geometria Euclidiana

Transformaes

Distncia, ngulo, projeo ortogonal

Distncia entre dois pontos P e Q: |P Q|


ngulo entre dois vetores ~u e ~v :
ngulo(~u , ~v ) = cos1 u v = cos1

~u ~v
|~u ||~v |

Projeo ortogonal: dados dois vetores ~u e ~v , deseja-se


decompor u na soma de dois vetores u~1 e u~2 tais que u~1
paralelo a ~v e u~2 perpendicular a ~v
u~1 = (~u ~v )
v
u~2 = ~u = u~1

3D

Geometria Afim

Geometria Euclidiana

Transformaes

Produto Vetorial (3D)

Permite achar um vetor


perpendicular a outros dois vetores
dados
til na construo de sistemas de
coordenadas

~i
uy vz uz vy


~u ~v = uz vx ux vz = ux

vx
ux vy uy vx

~j ~k

uy uz .

vy vz

3D

Geometria Afim

Geometria Euclidiana

Transformaes

Propriedades do produto vetorial


Assumindo ~u , ~v linearmente independentes:
Antisimetria: ~u ~v = ~v ~u
Bilinearidade:
~u (v) = (~u ~v ),
~u (~v + w
~ ) = (~u ~v ) + (~u w
~)
~u ~v perpendicular tanto a ~u quanto a ~v
O comprimento de ~u ~v igual a rea do paralelogramo
definido por ~u e ~v , isto , |~u ~v | = |~u ||~v | sin , onde o
ngulo entre ~u e ~v

3D

Geometria Afim

Geometria Euclidiana

Transformaes

Orientao
Operao relacionando d + 1 pontos em um espao
d-dimensional
Resultado sempre 1, 0 ou +1
Em R1 , corresponde ordem entre 2 pontos, isto , P1 < P2 ,
P1 = P2 ou P1 > P2
Em R2 , corresponde circulao entre 3 pontos: o percurso
P1 , P2 , P3 horrio, anti-horrio, ou se so pontos colineares

Em R3 , diz se o percurso entre 4 pontos P1 , P2 , P3 , P4


descreve um parafuso horrio, anti-horrio ou se so
coplanares.

3D

Geometria Afim

Geometria Euclidiana

Transformaes

Computado orientao

O operador orientao muito til no cmputo de diversos


predicados geomtricos: ponto sobre reta, ponto sobre plano,
etc.
A orientao de n + 1 pontos em um espao n-dimensional
dado pelo sinal do determinante da matriz cujas colunas so
as coordenadas homogneas dos pontos com o 1 vindo
primeiro. Ex.:

1


Or(P, Q, R) = sign( xP

yP

1
1
xQ xR
yQ yR

3D

Geometria Afim

Geometria Euclidiana

Sistemas de coordenadas
Um sistema de coordenadas para Rn
definido por um ponto (origem) e n
vetores
Exemplo
Seja um sistema de coordenadas para R2
~ e
definido pelo ponto O e os vetores X
~
Y
Ento, um ponto P dado por
coordenadas xP e yP tais que
~ + yP Y
~ +O
P = xP X
Um vetor ~v dado por coordenadas xv e
yv tais que
~ + yv Y
~
~v = xv X

Transformaes

3D

Geometria Afim

Geometria Euclidiana

Transformaes

Transformaes

Funo que mapeia pontos de um espao euclidiano em


outros pontos do mesmo espao
Transformao linear
Mapeia retas em retas
Preserva relaes de distncia
Preserva o ponto origem

Transformao linear afim


No necessariamente preserva a origem
Permite operaes de translao

3D

Geometria Afim

Geometria Euclidiana

Transformaes

Transformao de pontos em 2D

Seja P um ponto e P 0 = T (P) o ponto transformado


Se T linear

Se T linear afim


xP 0 = a xP + b yP
y P 0 = c x P + d yP

xP 0 = a xP + b yP + e
yP 0 = c xP + d yP + f

3D

Geometria Afim

Geometria Euclidiana

Transformaes

3D

Forma matricial
Matrizes podem ser processadas mais eficientemente em
computadores do que variveis simples
Sejam
"

P=

xP
yP

"
0

, P =

xP 0
yP 0

"

, A=

a b
c d

"

, D=

e
f

Ento transformaes lineares de pontos em 2D podem ser


expressas por
P 0 = AP,
e transformaes lineares afim por
P 0 = AP + D.

Geometria Afim

Geometria Euclidiana

Transformaes

Transformaes de vetores

Transformaes lineares afim e lineares puras afetam vetores


da mesma maneira
Vetores no tm ponto de aplicao
Translao no faz sentido para vetores

Prova:
V 0 = T (V ) = T (Q P)
= (AQ + D) (AP + D)
= A(Q P) + (D D)
= AV .

3D

Geometria Afim

Geometria Euclidiana

Transformaes

Coordenadas homogneas
Transformao de vetores diferente da de pontos
Coordenadas homogneas permitem unificar o tratamento
Problema levado para uma dimenso superior:
Coordenada extra w = 0 para vetores e = 1 para pontos
Termos independentes formam uma coluna extra na matriz de
transformao

x0

P0

b e
xP

d f yP = TP
0 0 1
1

P
= yP0 = c

x0
a b e
xV
V

0 = c d f y
0
V = yV

V = TV 0
0
0 0 1
0

3D

Geometria Afim

Geometria Euclidiana

Transformaes

Interpretao da matriz de transformao

As colunas da matriz de transformao podem ser vistas como


as componentes do sistema de coordenadas
~
a b e
X

~
c d f = Y
0 0 1
O

Portanto, transformar um ponto ou vetor pode ser visto como


uma mudana do sistema de coordenadas

3D

Geometria Afim

Geometria Euclidiana

Transformaes

Mudana de sistema de coordenadas


Se estabelecemos um outro sistema de coordenadas (ex.:
~ ,V
~ ), como obter as coordenadas de pontos nesse
Q, U
sistema?

3D

Geometria Afim

Geometria Euclidiana

Transformaes

3D

Mudana de sistema de coordenadas - Problema 1


Sabe-se:
~ ,Y
~ :
Coordenadas de P no sistema de coordenadas O, X
[xP , yP ]
~ ,Y
~ no sistema de coordenadas Q, U
~ ,V
~:
Coordenadas de O, X
[uO , vO ], [uX , vX ], [uY , vY ].

Deseja-se:
~ ,V
~ :
Coordenadas de P no sistema de coordenadas Q, U
[uP , vP ]

Substituindo:
~ + yP Y
~ +O
P = xP X
~ + vX V
~ ) + yP (uY U
~ + vY V
~ ) + (uO U
~ + vO V
~ + Q)
= xP (uX U
~ + (xP vX + yP vY + vO )V
~ +Q
= (xP uX + yP uY + uO )U
Ento:
uP = xP uX + yP uY + uO e vP = xP vX + yP vY + vO

Geometria Afim

Geometria Euclidiana

Transformaes

3D

Mudana de sistema de coordenadas - Problema 2

Matricialmente o problema 1 resolvido:

uP
uX


vP = vX
1
0

uY
vY
0

uO
xP

vO yP
1
1

Para resolver o problema inverso, basta inverter a matriz:

xP
uX


yP = vX
1
0

uY
vY
0

uO

vO
1

uP

vP
1

Geometria Afim

Geometria Euclidiana

Transformaes

Pontos e vetores em 3D
Pontos e vetores em 3D meramente requerem uma
coordenada extra z:

P=

xP
yP
zP
1

~ =
V

xV
yV
zV
0

Transformaes afim requerem uma linha e uma coluna extra:

T =

a b c k
e f g l
h i j m
0 0 0 1

3D

Geometria Afim

Geometria Euclidiana

Transformaes

Transformaes Rgidas

No modificam a forma ou dimenses do objeto


So compostas de uma rotao e uma translao

Numa transformao rgida, a submatriz 3 3 superior


esquerda tem que ser ortonormal
Vetores unitrios e ortogonais entre si

3D

Geometria Afim

Geometria Euclidiana

Translaes

Translao por um vetor


~ = [xV , yV , zV ]T dada
V
pela matriz homognea

T =

1
0
0
0

0
1
0
0

0 xV
0 yV
1 zV
0 1

Observe que translaes so


comutativas
P + V~1 + V~2 = P + V~2 + V~1

Transformaes

3D

Geometria Afim

Geometria Euclidiana

Transformaes

Rotao em torno do eixo z

Rz roda objetos de um ngulo


em torno do eixo z
Ento, Rz1 mapeia
[1, 0, 0]T [cos , sin , 0]T
[0, 1, 0]T [ sin , cos , 0]T
Logo,

Rz =

cos sin
sin cos
0
0
0
0

0
0
1
0

0
0
0
1

3D

Geometria Afim

Geometria Euclidiana

Transformaes

3D

Rotao em torno dos eixos x e y

Raciocnio anlogo permite concluir que

Rx =

1
0
0
0
0 cos sin 0
0 sin cos 0
0
0
0
1

Ry =

cos
0
sin
0

0 sin
1
0
0 cos
0
0

0
0
0
1

Geometria Afim

Geometria Euclidiana

Transformaes

Rotao ao redor de um eixo arbitrrio

A rotao ao redor do vetor unitrio u = [x, y, z]T por um


ngulo dada pela submatriz 3 3
R = uuT + (cos )(I uuT ) + (sin )S
Onde I a matriz identidade e

0 z y

0 x
S = z
y x
0

3D

Geometria Afim

Geometria Euclidiana

Transformaes

Escala

Especificada por trs fatores Sx , Sy e Sz que multiplicam os


eixos x, y e z

Sx 0 0 0
0 S
0 0

y
E =

0
0 Sz 0
0 0 0 1
Escala no uma transformao rgida em geral
Escala uniforme (Sx = Sy = Sz ) uma transformao
ortogonal ou homottica, isto , preserva os ngulos
Para obter reflexo em torno do plano z = 0, usar fatores de
escala (1, 1, 1)

3D

Vous aimerez peut-être aussi