Instituto de Computação - UFF 1 Computação Gráfica I Professor: Anselmo Montenegro www.ic.uff.br/~anselmo Conteúdo: - Transformações geométricas no plano.

Slides:



Advertisements
Apresentações semelhantes
Continuidade: sem interrupções
Advertisements

Movimento em I dimensão
Computação Gráfica I Conteúdo: Professor: - Projeções e câmera virtual
Computação Gráfica I Conteúdo: Professor: - Objetos gráficos espaciais
DESENHO INDUSTRIAL ASSISTIDO POR COMPUTADOR
Prof. Humberto Pinheiro, Ph.D.
Operações Algébricas Operações Topológicas
Operações envolvendo imagens
The Cyclops Project German-Brazilian Cooperation Programme on IT CNPq GMD DLR Departamento de Informática e Estatística - INE/CTC/UFSC Computação Gráfica:
Prof. Hebert Monteiro Movimento em I dimensão. Iniciaremos o nosso curso estudando a mecânica como ciência que estuda o movimento. A mecânica é dividida.
VETORES.
Propagação de Ondas e Antenas
Vetores Representação e características Operações I Decomposição
Universidade Bandeirante de São Paulo Fundamentos da Álgebra
Excel Profa. Cristina M. Nunes.
SISTEMAS DE EQUAÇÕES.
Resolução.
COMPUTAÇÃO GRÁFICA.
Claudio Esperança Paulo Roma Cavalcanti
Introdução à Computação Gráfica Geometria
Transformações Geométricas em C.G.
Transformações Geométricas
Transformações Geométricas Coordenadas Homogêneas e Rotações.
Transformações Geométricas na Imagem Amostragem e Reconstrução.
Transformações Geométricas Coordenadas Homogêneas e Rotações.
Computação Gráfica Teórica
Computação Gráfica Geometria de Transformações
Computação Gráfica Geometria de Transformações
Provas de Concursos Anteriores
MECÂNICA - ESTÁTICA Vetores Forças Cap. 2.
Expressão algébrica a partir da representação gráfica da função
Como aplicar leis da lógica
Impressão de etiquetas
Semana 03: Comandos de desvio de fluxo. Expressões lógicas.
MECÂNICA - ESTÁTICA Cabos Cap. 7.
MECÂNICA - DINÂMICA Cinemática de uma Partícula Cap. 12.
Momentos de Inércia Cap. 10
Cinemática de uma Partícula Cap. 12
Dinâmica do Movimento Plano de um Corpo Rígido: Força e Aceleração
Resultantes de Sistemas de Forças Cap. 4
MECÂNICA - DINÂMICA Cinemática Plana de um Corpo Rígido Cap. 16.
Cinemática Plana de um Corpo Rígido Cap. 16
Cinemática Plana de um Corpo Rígido Cap. 16
Resultantes de Sistemas de Forças Cap. 4
MECÂNICA - DINÂMICA Cinemática de uma Partícula Cap Exercícios.
Introdução à Computação Gráfica Projeções
1 António Arnaut Duarte. 2 Sumário: primeiros passos;primeiros passos formatar fundo;formatar fundo configurar apresentação;configurar apresentação animação.
GAPH Integração de Hardware do Usuário ao CoreConnect Leandro Heleno Möller e Leonel Pablo Tedesco Prototipação Rápida e Computação.
Centro de Gravidade e Centróide Cap. 9
É u m e l e m e n t o f u n d a m e n t a l
EXERCÍCIOS PARA GUARDA-REDES
Cinemática de uma Partícula Cap. 12
Transformações Geométricas no Plano e no Espaço
Computação Gráfica Geometria de Transformações
Técnicas de Modelagem para Aplicações em Computação Gráfica
Projeto de Banco de Dados
1 2 Observa ilustração. Cria um texto. Observa ilustração.
Computação Gráfica Aula 3 Transformações Geométricas
Definições e Transformações Projetivas
Álgebra Vetorial e Linear para Computação
TRANSFORMAÇÕES DE TENSÕES
Preleções Científicas Universidade Estadual do Ceará Pró-Reitoria de Extensão Integrais Múltiplas e Integrais de Volume Ministrante: Prof. K. David Sabóia.
CALENDÁRIO SEXY Ele & Ela. CALENDÁRIO SEXY Ele & Ela.
Rio Verde - Goiás - Brasil
Cinemática Plana de um Corpo Rígido Cap. 16
Dinâmica do Movimento Plano de um Corpo Rígido: Força e Aceleração
Mapeamento de Textura: Aspectos Gerais
Luiz Carlos dos Santos Filho – Licenciado IME
GINÁSTICA LABORAL UM NOVO CAMINHO.
Transformações Geométricas
Transcrição da apresentação:

Instituto de Computação - UFF 1 Computação Gráfica I Professor: Anselmo Montenegro Conteúdo: - Transformações geométricas no plano.

Instituto de Computação - UFF 2 Transformações geométricas: Introdução Na Computação Gráfica é essencial poder movimentar e deformar objetos.Na Computação Gráfica é essencial poder movimentar e deformar objetos. Casos particulares: transformações geométricas.Casos particulares: transformações geométricas.

Instituto de Computação - UFF 3 Uma transformação T no plano é uma função que associa a cada ponto p do plano euclidiano um ponto p em. Conveniente introduzir um sistema de coordenadas. Transformações geométricas: Introdução p p

Instituto de Computação - UFF 4 Referencial no plano –( O, e 1, e 2 ), onde O é um ponto escolhido como origem e ( e 1, e 2 ) forma uma base do R 2. –OP = xe 1 + ye 2 –x e y são as coordenadas de p no referencial ( O, e 1, e 2 ). –Coordenadas da origem O: (0,0). Transformações geométricas: transformações no plano (2D) O e1e1e1e1 e2e2e2e2p

Instituto de Computação - UFF 5 Um referencial estabelece uma correspondência entre o plano euclidiano e R 2 = {(x,y) | x, y R}. Permite estudar transformações do plano a partir de transformações em R 2. Ponto de partida: estrutura de espaço vetorial do R 2 (logo, do plano). Transformações geométricas: transformações no plano (2D)

Instituto de Computação - UFF 6 Uma transformação L:R 2 R 2 é dita linear quandoUma transformação L:R 2 R 2 é dita linear quando L( p 1 + p 2 )= L(p 1 )+ L(p 2 ), L( p 1 + p 2 )= L(p 1 )+ L(p 2 ), onde p 1, p 2 R 2 e a, b R. onde p 1, p 2 R 2 e a, b R. Obs: L (0, 0) = (0, 0) (ou seja, a origem O do referencial é mantida fixa por uma transformação linear).Obs: L (0, 0) = (0, 0) (ou seja, a origem O do referencial é mantida fixa por uma transformação linear). Transformações geométricas: transformações lineares

Instituto de Computação - UFF 7 Uma transformação linear L:R 2 R 2 fica completamente determinada quando se conhecem L(e 1 ) e L(e 2 ), onde (e 1, e 2 ) formam uma base do R 2.Uma transformação linear L:R 2 R 2 fica completamente determinada quando se conhecem L(e 1 ) e L(e 2 ), onde (e 1, e 2 ) formam uma base do R 2. L(e 1 ) = ae 1 + be 2, L(e 2 ) = ce 1 + de 2 p = xe 1 + ye 2 L(p) = xL(e 1 )+yL(e 2 ) = = x(ae 1 +be 2 )+y(ce 1 +de 2 ) = (ax+cy)e 1 + (bx+dy)e 2 Transformações geométricas: transformações lineares Matriz da transformação L(e 1 ) L(e 2 )

Instituto de Computação - UFF 8 O mais comum é representar uma transformação linear com respeito à base canônica do R 2 : e 1 = (1, 0), e 2 = (0,1). Transformações lineares preservam elementos lineares (retas, planos, etc) Transformações geométricas: transformações lineares e1e1e1e1 e2e2e2e2 L(e1)L(e1)L(e1)L(e1) L(e2)L(e2)L(e2)L(e2)

Instituto de Computação - UFF 9 Algumas transformações lineares correspondem a transformações geométricas importantes.Algumas transformações lineares correspondem a transformações geométricas importantes. –Escalas. –Reflexões. –Rotações. –Cisalhamento. Transformações geométricas: transformações lineares

Instituto de Computação - UFF 10 Transformações geométricas: transformações lineares Redução (0< s x <1), Aumento (s y >1) x y c b

Instituto de Computação - UFF 11 Transformações geométricas: transformações lineares x´ = -1.x y´ = y x y Espelhamento em relação ao eixo y

Instituto de Computação - UFF 12 Transformações geométricas: transformações lineares x y rrr

Instituto de Computação - UFF 13 Transformações geométricas: transformações lineares x y x y

Instituto de Computação - UFF 14 Não: mantêm a origem invariante. Logo, não podem representar translações. Considerar uma classe mais ampla: transformações afins. Transformações geométricas: transformações lineares x y p p'

Instituto de Computação - UFF 15 Uma transformação T:R 2 R 2 é dita afim quandoUma transformação T:R 2 R 2 é dita afim quando T(ap 1 + (1-a) p 2 )=aT(p 1 )+(1-a)T(p 2 ), T(ap 1 + (1-a) p 2 )=aT(p 1 )+(1-a)T(p 2 ), onde p 1, p 2 R 2 e a R. onde p 1, p 2 R 2 e a R. Transformações geométricas: transformações afins p1p1p1p1 p2p2p2p2 T(p 1 ) T(p2)T(p2)T(p2)T(p2) ap 1 + (1-a) p 2 aT(p 1 )+(1-a)T(p 2 ),

Instituto de Computação - UFF 16 Uma transformação T é afim se e somente se é da forma T(p) = L(p) + t, onde L é linear. Transformações geométricas: transformações afins

Instituto de Computação - UFF 17 Preservam retas, razão de seção e coordenadas baricêntricas. Se p = 1 v v v 3, com = 1, então T(p) = 1 T(v 1 ) + 2 T(v 2 ) + 3 T(v 3 ). Transformações geométricas: transformações afins v3v3 v1v1 v2v2 T(v 1 ) T(v 2 ) T(v 3 ) p T(p)

Instituto de Computação - UFF 18 Uma transformação afim fica determinada quando se conhece T(v 1 ), T(v 2 ) e T(v 3 ), onde v 1, v 2, v 3 formam um triângulo. Caso particular: referencial (O, e 1, e 2 ) Transformações geométricas: transformações afins e1e1e1e1 e2e2e2e2 T(e1)T(e1)T(e1)T(e1) T(e2)T(e2)T(e2)T(e2) O O

Instituto de Computação - UFF 19 Podemos tratar todas as transformações de forma unificada se representarmos os pontos do espaço em coordenadas homogêneas.Podemos tratar todas as transformações de forma unificada se representarmos os pontos do espaço em coordenadas homogêneas. Em coordenadas homogêneas, um ponto do plano é representado por uma tripla [ x,y,w ] ao invés de um par ( x,y ).Em coordenadas homogêneas, um ponto do plano é representado por uma tripla [ x,y,w ] ao invés de um par ( x,y ). Duas coordenadas homogêneas [ x,y,w ] e [ x,y,w ] representam o mesmo ponto se uma é um múltiplo da outra.Duas coordenadas homogêneas [ x,y,w ] e [ x,y,w ] representam o mesmo ponto se uma é um múltiplo da outra. Transformações geométricas: Coordenadas Homogêneas

Instituto de Computação - UFF 20 Se w 0 podemos dividir as coordenadas homogêneas por w.Se w 0 podemos dividir as coordenadas homogêneas por w. ( x, y, w ) representa o mesmo ponto que ( x/w, y/w,1). Se w =0, então ( x, y, w ) é um ponto no infinito e representa uma direção do plano (mais sobre isto depois...)Se w =0, então ( x, y, w ) é um ponto no infinito e representa uma direção do plano (mais sobre isto depois...) Transformações geométricas: Coordenadas Homogêneas

Instituto de Computação - UFF 21 O uso de coordenadas homogêneas consiste em representar um espaço 2D imerso em um espaço 3D.O uso de coordenadas homogêneas consiste em representar um espaço 2D imerso em um espaço 3D. Se tomarmos todas as triplas ( tx, ty, tw ), w 0, que representam um mesmo ponto, temos uma reta no espaço 3D.Se tomarmos todas as triplas ( tx, ty, tw ), w 0, que representam um mesmo ponto, temos uma reta no espaço 3D. Transformações geométricas: Coordenadas Homogêneas y x w (tx,ty,tw) (x,y,w)

Instituto de Computação - UFF 22 Os pontos da forma [ x, y, 1 ] formam um plano com coordenadas w = 1 no espaço ( x, y, w ).Os pontos da forma [ x, y, 1 ] formam um plano com coordenadas w = 1 no espaço ( x, y, w ). Transformações geométricas: Coordenadas Homogêneas y x w w=1 (x,y,w) (x/w,y/w,1)

Instituto de Computação - UFF 23 Pontos são representados em coordenadas homogêneas por vetores de 3 componentes.Pontos são representados em coordenadas homogêneas por vetores de 3 componentes. Logo, as matrizes de transformação devem ser representadas por matrizes 3x3.Logo, as matrizes de transformação devem ser representadas por matrizes 3x3. Transformações geométricas: Coordenadas Homogêneas

Instituto de Computação - UFF 24 Transformações geométricas: translações em coordenadas homogêneas y x w w=1 t

Instituto de Computação - UFF 25 Transformações geométricas: matrizes de transformação em coordenadas homogêneas Escala Rotação Cisalhamento

Instituto de Computação - UFF 26 Transformações geométricas: Composição de transformações 2D x y x0x0x0x0 y0y0y0y0 x y x yx y x0x0x0x0 y0y0y0y0

Instituto de Computação - UFF 27 A OpenGL trata objetos planares como sendo objetos tridimensionais com uma das coordenadas constante.A OpenGL trata objetos planares como sendo objetos tridimensionais com uma das coordenadas constante. Logo, todas as transformações são realizadas no R 3 (de fato no espaço homogêneo 3d).Logo, todas as transformações são realizadas no R 3 (de fato no espaço homogêneo 3d). TranslaçãoTranslação –glTranslate{fd}(TYPE x, TYPE y, TYPE z); Rotação de angle graus em torno de um eixo ( x, y, z ).Rotação de angle graus em torno de um eixo ( x, y, z ). –glRotate{fd}(TYPE angle,TYPE x, TYPE y, TYPE z); EscalaEscala –glScale{fd}(TYPE sx, TYPE sy, TYPE sz); Transformações geométricas: OpenGL

Instituto de Computação - UFF 28 A exibição de objetos gráficos é uma aplicação importante de mudança de sistema de coordenadas.A exibição de objetos gráficos é uma aplicação importante de mudança de sistema de coordenadas. Os dispositivos gráficos de saída possuem uma superfície planar onde a representação de objetos gráficos é materializada.Os dispositivos gráficos de saída possuem uma superfície planar onde a representação de objetos gráficos é materializada. Denominamos esta superfície de superfície de suporte.Denominamos esta superfície de superfície de suporte. Transformações geométricas: transformações de tela

Instituto de Computação - UFF 29 A superfície de suporte possui um sistema de coordenadas denominado sistema de coordenadas do dispositivo.A superfície de suporte possui um sistema de coordenadas denominado sistema de coordenadas do dispositivo. Exemplo: monitorExemplo: monitor –A tela do monitor é a materialização de uma superfície retangular com um sistema de coordenadas ortogonais com origem em algum ponto da tela. Transformações geométricas: transformações de tela

Instituto de Computação - UFF 30 Um objeto gráfico possui um sistema de coordenadas no qual as coordenadas dos seus pontos são especificadas.Um objeto gráfico possui um sistema de coordenadas no qual as coordenadas dos seus pontos são especificadas. Esse sistema de coordenadas é denominado sistema de coordenadas do objeto.Esse sistema de coordenadas é denominado sistema de coordenadas do objeto. Para exibirmos um objeto gráfico precisamos fazer uma mudança de sistema de coordenadas do objeto para o sistema do dispositivo.Para exibirmos um objeto gráfico precisamos fazer uma mudança de sistema de coordenadas do objeto para o sistema do dispositivo. Transformações geométricas: transformações de tela

Instituto de Computação - UFF 31 Na transformação de tela é feita através do mapeamento entre dois retângulos.Na transformação de tela é feita através do mapeamento entre dois retângulos. –A janela (window), definida no sistema de coordenadas do objeto, e a moldura (viewport), é definida no sistema de coordenadas do dispositivo. janela Sistema de coordenadas do objeto moldura Sistema de coordenadas da janela Coordenadas máximas da janela Transformações geométricas: transformações de tela

Instituto de Computação - UFF 32 A janela é especificada através de um par de pontos (x 0,y 0 ) e (x 1,y 1 ) e a viewport por um outro par (u 0,v 0 ) e (u 1,v 1 ).A janela é especificada através de um par de pontos (x 0,y 0 ) e (x 1,y 1 ) e a viewport por um outro par (u 0,v 0 ) e (u 1,v 1 ). As mudanças de coordenadas são realizadas através da sequinte sequência de transformações:As mudanças de coordenadas são realizadas através da sequinte sequência de transformações: 1.Translada-se o ponto (x 0,y 0 ) para a origem do sistema de coordenadas do mundo. 2.Aplica-se uma mudança de escala para transformar o novo retângulo da janela num retângulo congruente ao retângulo da moldura. 3.Translada-se o ponto da origem do sistema do dispositivo para o ponto (u 0,v 0 ) da moldura. Transformações geométricas: transformações de tela

Instituto de Computação - UFF 33 (x 0,y 0 ) x x (x 1,y 1 ) (u 1,v 1 ) (u 0,v 0 ) x x y y v v Transformações geométricas: transformações de tela

Instituto de Computação - UFF 34 Rastreio: processo através do qual primitivas geométricas como, por exemplo, linhas e polígonos, são transformadas em imagens digitais.Rastreio: processo através do qual primitivas geométricas como, por exemplo, linhas e polígonos, são transformadas em imagens digitais. Composto de duas etapas:Composto de duas etapas: –Determinar quais células da imagem são ocupadas pela primitiva. –Atribuir os respectivos atributos(cor, profundidade, etc.) a cada uma dos elementos ocupados. Algoritmos para rastreio: introdução