Sumário COMPUTAÇÃO GRÁFICA E INTERFACES. Modelos e modelagem. Modelos e modelagem. Transformações Geométricas e Visualização 2D

Documentos relacionados
Computação Gráfica 09

Sistemas de Referência

4. Curvas Paramétricas e Transformações 2D

Computação Gráfica. Primitivas Gráficas Professora Sheila Cáceres

Transformações Geométricas. Transformações Geométricas. Sistemas de Coordenadas. Translação: M.C.F. de Oliveira Rosane Minghim 2006

Modelos Geométricos Transformações

Transformações geométricas no plano e no espaço

Transformações Geométricas Grafos de Cena

Aula /2 Sistemas de coordenadas Transformação entre sistemas

Visualização bidimensional. Universidade Católica de Pelotas Centro Politécnico Disciplina: Computação Gráfica

Visualização por Computador: Teoria, Prática e Aplicações

Coordenadas Homogêneas no Plano e no Espaço

Sistemas de coordenadas Transformação entre sistemas

Computação Gráfica - 09

aula8 Transformações Geométricas no Plano e no Espaço 2016/2 IC / UFF

Modelagem Cinemática de Robôs Industriais. Prof. Assoc. Mário Luiz Tronco

Transformações Geométricas

Professor: Computação Gráfica I. Anselmo Montenegro Conteúdo: - Objetos gráficos planares. Instituto de Computação - UFF

Computação Gráfica - 09

Modelagem Cinemática de Robôs Industriais. Prof. Assoc. Mário Luiz Tronco

Computação Gráfica e Processamento de Imagens. - Sistemas 3D (conceitos básicos) Prof. Julio Arakaki

ROBÓTICA TRANSFORMAÇÕES MATRICIAIS. Prof a. Dra. GIOVANA TRIPOLONI TANGERINO Tecnologia em Automação Industrial

Computação Gráfica. Representação e Modelagem

Translação. Sistemas de Coordenadas. Translação. Transformações Geométricas 3D

Computação Gráfica - 11

Introdução à Computação Gráfica

TRANSFORMAÇÕES EM SISTEMAS CARTESIANOS

Modelação de Sólidos. Sistemas Gráficos/ Computação Gráfica e Interfaces FACULDADE DE ENGENHARIA DA UNIVERSIDADE DO PORTO

Pipeline de Visualização 2D

Computação Gráfica - OpenGl 02

Computação Gráfica - 10

CÁLCULO VETORIAL E GEOMETRIA ANALÍTICA

Geometria Analítica. Cônicas. Prof Marcelo Maraschin de Souza

Transformações (Cap 4.3, 4.4 e 4.6 a 4.10)

Modelação de Sólidos. Sistemas Gráficos/ Computação Gráfica e Interfaces FACULDADE DE ENGENHARIA DA UNIVERSIDADE DO PORTO

Transformações Geométricas 2D e 3D

Instituto de Computação Bacharelado em Ciência da Computação Disciplina: Computação Gráfica Primeira lista de exercícios

António Costa. Paulo Roma Cavalcanti

Aula /2 Sistemas de coordenadas Window x Viewport

aula9 Coordenadas homogêneas e projeções 2016/2 IC / UFF

Computação Gráfica. Prof. MSc. André Yoshimi Kusumoto

Computação Gráfica. Engenharia de Computação. CEFET/RJ campus Petrópolis. Prof. Luis Retondaro. Aula 3. Transformações Geométricas

Rasterização de primitivas 2D e Pipeline 2D. Soraia Raupp Musse

Exame de Época Especial Computação Gráfica

Aula /2 Sistemas de coordenadas Window x Viewport

Visualização 2D: - Transformação window to viewport - Clipping

Transformações Geométricas

Pipeline de Visualização 3D

Computação Gráfica e Áreas Correlatas

Representação de Objetos e Cenas. Soraia Musse

1º Teste de Computação Gráfica 3º Ano

1º Teste de Computação Gráfica

Computação Gráfica II

Modelagem Geométrica. André Tavares da Silva. Capítulo 12 do Foley Capítulo 4 de Azevedo e Conci Capítulo 11 de Mortenson

Jorge M. V. Capela, Marisa V. Capela. Araraquara, SP

Objetos Gráficos Planares

Integrais Múltiplas. Prof. Ronaldo Carlotto Batista. 23 de outubro de 2014

Triangulação Mapeamento em Viewport Modelação Geométrica

Curvas e Superfícies. 35M34 Sala 3E1 Bruno Motta de Carvalho DIMAp Sala 15 Ramal 227 DIM102

Acadêmico: Denilson Domingos Professor Orientador: Paulo César Rodacki Gomes FURB - Universidade Regional de Blumenau

Instituto de Computação Bacharelado em Ciência da Computação Disciplina: Computação Gráfica Primeira lista de exercícios

Computação Gráfica. Prof. André Yoshimi Kusumoto

Universidade Federal do Rio de Janeiro Instituto de Física Prova Final (Noturno) Disciplina: Fisica III-A /1 Data: 05/07/2018 V 2B 2 R 2

Robótica. Linguagens de Programação para Robótica (manipuladores)

Prof. Fernando V. Paulovich 3 de agosto de SCC Computação Gráca

Resumo. Computação Gráfica: Uma Proposta de Plano Pedagógico. Áreas Correlatas. Definição. Uma Visão Integrada da C.G.

Aplicações de Álgebra Linear - Fractais

Jorge M. V. Capela, Marisa V. Capela. Araraquara, SP

Capítulo 5 Integral. Definição Uma função será chamada de antiderivada ou de primitiva de uma função num intervalo I se: ( )= ( ), para todo I.

Capítulo 2 Vetores. 1 Grandezas Escalares e Vetoriais

Transformações 3D. Soraia Raupp Musse

Introdução à Computação Gráfica. Claudio Esperança Paulo Roma Cavalcanti

3.2 Determine a equação da circunferência de raio 5, tangente à reta 3x +4y =16no ponto A (4, 1).

Histórico. Estado da Arte. Histórico. Modelagem de Objetos. Modelagem por arames (wireframes). Modelagem por superfícies (década de 60).

Objetos Gráficos Planares

Transformações de Pontos. Computação Gráfica Prof. Dr. Paulo Roberto Gomes Luzzardi Aluna: Karina da Silva Salles

3D no OpenGL. Visualização e Transformações Perspectiva. Transformações do Modelview. Processo

Computação Gráfica. Prof. MSc André Yoshimi Kusumoto

Transcrição:

Sumário COMPUTAÇÃO GRÁFICA E INTERFACES Transformações Geométricas e Visualização D Transformações geométricas Pipeline de visualização D Transformação de coordenadas Window-Viewport Recorte (Clipping) Carlos Carreto Curso de Engenharia Informática Ano lectivo 3/4 Escola Superior de Tecnologia e Gestão da Guarda Modelo É uma representação de uma entidade física ou abstracta. Modelagem É o processo de representar algo através de modelos. Modelos em computação gráfica Representam os objectos e as cenas que se pretendem desenhar. Modelagem em computação gráfica É o processo pelo qual se descreve um modelo (objecto ou cena), de forma a que seja possível desenha-los.

Estruturas de dadas Os modelos são armazenados em estruturas de dados que armazenam a informação sobre os objectos e cenas. Existem várias técnicas de representação e armazenamento que dependem da natureza dos modelos e das operações que queremos fazer com eles. Técnicas de representação Por entidades matemáticas com representação analítica conhecida: círculos, linhas, curvas, etc representação por parâmetros ou coeficientes que permitem a reconstrução dos objectos através de um procedimento. Técnicas de representação Por amostragem de pontos: armazenamento dos pontos e identificação do método para a aproximação da curva ou superfície amostrada. Técnicas de representação Por enumeração de pontos imagem constituída por uma matriz de pontos (bitmap).

Técnicas de representação Por decomposição planar representação de áreas de uma superfície por subdivisão sucessiva e hierárquica do plano onde está definida. Técnicas de representação Por vértices e arestas é a técnica de representação mais comum. são armazenados os vértices e as arestas que aproximam os contornos dos objectos. Representação por vértices e arestas Vértices Arestas, y, 3, y, 3 Representação por procedimentos Quando o armazenamento numa única estrutura de dados é muito custoso, podemos usar a modelagem baseada em procedimentos onde apenas armazenamos um conjunto mínimo de parâmetros e a identificação de um procedimento capaz de reconstruir o modelo a partir desses parâmetros. É ocaso dos L- systems e dos fractais. 4 3, y3 4, y4..., 3 3, 4...

Pipeline de Visualização D Visão preliminar Transformações geométricas D Na maioria das aplicações os objectos que formam uma cena podem sofrear manipulações que alteram o seu aspecto. Estas manipulações são realizadas através de transformações geométricas. Modelo Processo de Visualização D Imagem Os objectos são formados por primitivas gráficas tais como pontos, linhas, curvas, etc. Estas primitivas são definidas por coordenadas cartesianos de pontos no espaço. As transformações geométricas são aplicadas a estas coordenada cartesianos alterando uniformemente o aspecto dos objectos, mas não a sua topologia. Isto é, o modelo do objecto não é alterado, pois as transformações geométricas são aplicadas apenas no momento em que o objecto é desenhado. Transformações geométricas D As transformações geométricas básicas são: Translação Transformações geométricas D Translação A translação troca um objecto de lugar adicionando uma constante de deslocamento às coordenadas de cada ponto do objecto. Variação de Escala ' + T ' + T Na forma matricial: Rotação [ ' ' ] [ ] + [ ] T T

Transformações geométricas D Translação Exemplo com Tx e Ty - Transformações geométricas D Variação de escala A variação de escala altera o tamanho e/ou as proporções do objecto multiplicando as coordenada de cada ponto por factores de escala. ' E ' E Na forma matricial: E [ ' ' ] [ ] E Transformações geométricas D Variação de escala Exemplo com Ex e Ey Transformações geométricas D Variação de escala em relação a um ponto fixo º Translação de modo a fazer coincidir o ponto com a origem; º Variação de escala; 3º Translação inversa da primeira.

Transformações geométricas D Variação de escala em relação a um ponto fixo Exemplo: P(, ), E e E Transformações geométricas D Rotação (, ) cos φ sen φ (, ) cos (φ + θ) cos φ cos θ senφ sen θ y sen (φ + θ) sen φ cos θ + cos φ sen θ θ φ. cos θ. senθ. cos θ +. sen θ Transformações geométricas D Rotação A rotação roda todos os pontos do objecto, segundo um ângulo θ em relação à origem. Transformações geométricas D Rotação Exemplo com θ 9º ' cos θ - sen θ ' sen θ+ cos θ Na forma matricial: cosθ - senθ senθ [ ' ' ] [ ] cosθ

Transformações geométricas D Rotação em relação a um ponto arbitrário º Translação de modo a fazer coincidir o ponto com a origem; º Rotação; 3º Translação inversa da primeira. Unindo tudo numa única formula: ' (- r) cos θ - (- r) sen θ ' (- r) cos θ+ ( r) sen θ Onde ( r, r ) é o ponto de referencia, em torno do qual será feita a rotação Transformações geométricas D Coordenadas homogéneas Verificamos que a representação matricial das transformações não é sempre igual. A translação é tratada como uma soma, enquanto que a variação de escala e a rotação são tratadas como multiplicações. As transformações devem ser tratadas da mesma maneira para que possam ser facilmente combinadas. Para uniformizar a representação matricial das transformações usamos coordenadas homogéneas. Transformações geométricas D Transformações geométricas D Coordenadas homogéneas P(, ) -> P(W, W, W), para W Na computação gráfica consideramos W Translação: [ ' ' ] [ ] T T Composição das transformações Uma vez que ao usar coordenadas homogéneas, todas as transformações são tratadas como multiplicações, podemos criar uma transformação composta, combinando várias matrizes numa só, multiplicando-as. Depois multiplicamos os vários pontos do objecto pela matriz resultante. Variação de escala: [ ' ' ] [ ] E E Exemplo: Ponto P(3,, ) Transformações E(, ) e T(, ) Rotação [ ' ' ] [ ] cosθ - senθ senθ cosθ P (P E) T ou P P (T E)

Transformações geométricas D Composição das transformações P (P E) T P P (T E) [ ] [ ] [ ] [ ] 3 8 6 3 ' ' [ ] [ ] [ ] 3 8 3 ' ' Pipeline de visualização D Sistema de Referência do Objecto (SRO) O SRO é o espaço de coordenadas mais adequado à criação do objecto. Pipeline de visualização D Sistema de Referência do Universo (SRU) Depois de modelados, os objectos são posicionados no universo. O SRU é o espaço de coordenadas do universo. Pipeline de Visualização D Modelo (SRO) Processo de Visualização D (SRU) Imagem Transformações geométricas Revisitado

Instanciação Por vezes os objectos de uma cena são derivados de um mesmo modelo, isto é, são instâncias do mesmo modelo. Instanciação O uso de instâncias torna o universo menor pois para representar instâncias diferentes basta armazenar o nome do modelo e os parâmetros de instanciação. O armazenamento das instâncias pode ser realizado usando tabelas ou listas com o nome do modelo e os valores dos parâmetros de instanciação Modelo Cor T T E E θ Casa As instâncias possuem a mesma estrutura básica, mas diferem num conjunto de parâmetros como a cor, o tamanho, a posição, etc. Árvore Árvore... Mapeamento Notemos que os modelos são criados no SRO para posterior instanciação no SRU. As informação do modelo, bem como das instâncias referem-se à aplicação e não ao dispositivo. Isto é, os modelos são criados independentemente do dispositivo. Para visualizar as instâncias é então necessário converter as coordenadas do modelo para coordenadas do dispositivo. Mapeamento O mapeamento converte as coordenadas do sistema de referência do universo (SRU) para o sistema de referência do dispositivo (SRD). P SRU ( U, U ) P SRD ( D, D )

Mapeamento Para determinar a coordenada D Mapeamento Para determinar a coordenada D (Invertemos a relação dos eixos porque crescem em sentidos opostos ) Umax Dmax D U Dmin Umin Dmax Umax Dmin Umin Umax Dmin D U Dmax Umin Dmin Umax Dmax Umin U D U D ( ) ( Dmax Dmin U Umin D + Umax Umin ) Dmin ( ) ( Dmin Dmax U Umin D + Dmax Umax Umin ) Umin Dmin Umin Dmax Mapeamento Notar que o mapeamento pode ser visto como uma transformação composta que inclui uma translação, uma variação de escala e outra translação. Window e Viewport A Window é a área do universo que interessa visualizar e tem coordenadas no SRU. A Viewport é a área do dispositivo onde o conteúdo da Window vai ser mapeado e tem coordenadas do SRD. ( ) ( Dmax Dmin U Umin D + Umax Umin ) Dmin Window Viewport

Pipeline de Visualização D Recorte (Clipping) É necessário haver uma etapa de recorte que elimine os objectos que ficam total ou parcialmente fora do Window. Modelo (Descrição geométrica No SRO) Transformações Geométricas Instanciação dos objectos (SRU) Especificação da Window Recorte (SRU) Especificação da Viewport Mapeamento SRU -> SRD Rasterização (SRD) Imagem (Matriz de pontos)