Upload
others
View
4
Download
0
Embed Size (px)
Citation preview
CC BY-SA 2017
Engenharia de Computação
CEFET/RJ – campus Petrópolis
Prof. Luis Retondaro
Aula 3
Transformações Geométricas
no plano e no espaço
Computação Gráfica
2
Introdução
(Geometria)
3
Pontos, Vetores e Matrizes
Dado um sistema de coordenadas, é possível definir pontos e objetos neste sistema pelas suas coordenadas.
– Nos espaços bidimensionais ou nos objetos planos, duas coordenadas caracterizam um ponto.
– Para objetos tridimensionais ou pontos no espaço, três coordenadas são necessárias para definir seu posicionamento.
Assim, dado um sistema de coordenadas, cada ponto pode ser associado às suas coordenadas no sistema.
4
Pontos, Vetores e Matrizes
Por exemplo:
– A convenção usada é que ao definir um ponto, usa-se a sua distância em relação a cada um dos eixos do sistema de coordenadas. Essas representações também podem ser chamadas de vetores linhas, ou vetores colunas, respectivamente.
– São ainda chamadas de arranjos (arrays) ou matrizes.
5
Geometria Afim
Composta dos elementos básicos– escalares– pontos - denotam posição– vetores - denotam deslocamento (direção e
magnitude)
Operações– escalar · vetor = vetor– vetor + vetor ou vetor – vetor = vetor– ponto – ponto = vetor– ponto + vetor ou ponto – vetor = ponto
6
Combinações Afim
Maneira especial de combinar pontos
Para 2 pontos P e Q poderíamos ter uma combinação afim
7
Combinações Convexas
* Combinações afim onde se garante que todos os coeficientes são positivos (ou zero)
* Usa-se esse nome porque qualquer ponto que é uma combinação convexa de n outros pontos pertence à envoltória convexa desses pontos
8
Pontos, Vetores e Matrizes
Diferença entre ponto e vetor
9
Operações com vetores (2D)
10
Operações com matrizes
– Soma e subtração– Multiplicação por escalar– Inversa– Transposta– Multiplicação de matrizes
Uma propriedade interessante é que (A B) T = B T A T
– Lembre-se de usá-la sempre que comparar resultados de diferentes fontes da literatura, principalmente vetores linhas ou vetores colunas nas multiplicações.
11
Operações com matrizes
(A B) T = B T A T – O uso da transposta torna sempre possível a
multiplicação de dois vetores. – Se for feita a multiplicação de forma que o
resultado seja um número, ela é denominada de produto interno ou produto escalar de dois vetores• tem muitas aplicações importantes e é
simbolizada por um “•”.
– Assim podemos dizer que o produto interno entre dois vetores (V1 • V2) é um número (ou escalar)
12
Geometria Euclideana
* Extensão da geometria afim pela adição do operador produto interno
* Produto interno mapeia um par de vetores em um escalar. Tem as seguintes propriedades:
13
Geometria Euclideana
Operador de produto interno
O comprimento de um vetor é definido como:
Vetor unitário (normalizado)
14
Geometria Euclideana
Distância entre dois pontos P e Q |P – Q |
O ângulo entre dois vetores pode ser determinado por:
15
Geometria Euclideana
Projeção ortogonal: – dados dois vetores u e v, deseja-se
decompor u na soma de dois vetores u1 e u2 • tais que u1 é paralelo a v e
• u2 é perpendicular a v
16
Produto Vetorial (3D)
* Permite achar um vetor perpendicular a outros dois dados
* Útil na construção de sistemas de coordenadas
* Propriedades (assume-se u, v linearmente independentes):
17
Transformações
18
Transformações Geométricas
Transformações geométricas são operações que podem ser utilizadas para alterar algumas características como posição, orientação, forma ou tamanho do objeto a ser desenhado.
– Para executar uma transformação podemos usar operações algébricas (caras computacionalmente).
– O uso de matrizes é mais interessante para esse objetivo
– As matrizes podem fazer as transformações e combiná-las de forma mais eficiente.
– Elas também são mais eficientes na armazenagem das figuras presentes no seu cenário
19
Transformações Geométricas
Transformação é uma função que mapeia pontos de um espaço Euclidiano em outros (ou possivelmente os mesmos) pontos do mesmo espaço.
– Se uma transformação é linear, então• Se um conjunto de pontos está contido em uma reta, depois de
transformados eles também estarão contidos sobre uma reta.
– Se um ponto P guarda uma relação de distância com dois outros pontos Q e R, então essa relação de distância é mantida pela transformação.
Transformação mapeia origem na origem?– Sim: Transformação Linear– Não: Transformação Linear Afim: Translações são
permitidas
20
Transformações Geométricas
Uma transformação linear
Uma transformação linear afim
21
Forma Matricial
Mais conveniente para uso em computador
– Sejam:
– Então uma transformação linear afim pode ser escrita T (P) = P’ , onde
P’ = A x P + D
22
Transformando Vetores
* Um vetor não está atrelado a um ponto no espaço
* Uma transformação linear afim aplicada a um vetor não inclui translação
Prova: Seja V um vetor e V’ sua imagem sob a transformação linear afim, então:
23
Coordenadas Homogêneas
A transformação de vetores é operacionalmente diferente da de pontos
Coordenadas homogêneas permitem unificar o
tratamento
Problema é levado para uma dimensão superior:
– Coordenada extra w= 0 para vetores e =1 p/ pontos
– Termos independentes formam uma coluna extra na matriz de transformação
24
Modelando Transformações
Uma t.l.a. em 2D pode ser definida se dispusermos da imagem de 3 pontos do domínio
25
Sistemas de Coordenadas
Um sistema de coordenadas para Rn é definido por
um ponto (origem) e n vetores– Ex. Seja um sistema de coordenadas para R2
definido pelo ponto O e os vetores X e Y. Então,• Um ponto P é dado por coordenadas xP e yP tais que
• Um vetor V é dado por coordenadas xv e yv tais que
26
Mudança de Sistemas de Coordenadas
Se estabelecemos um outro sistema (ex.: Q/T/U), como computar as novas coordenadas dadas as antigas?
27
Mudança de Sistemas de Coordenadas
28
Mudança de Sistemas de Coordenadas
29
Orientação
30
Orientação
Regra da mão direita:– Dedo polegar posicionado no sentido
do eixo x– Dedo indicador apontando para o eixo y– Dedo médio apondando para o terceiro
eixo z,
Se isto acontecer, significa que as três direções formam um sistema de eixos
positivos
31
Orientação
32
Computando Orientação
33
Transformações em 3D
34
Transformações Rígidas
35
Translação
36
Rotação em torno do eixo Z
37
Rotação em torno do eixo Z
38
Rotação em torno dos eixos coordenados
39
Rotações em geral
40
Inclinação (“shear”)
41
Escala
42
Composição de transformações em 3D