A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

UNIVERSIDADE CATÓLICA DE PELOTAS CENTRO POLITÉCNICO COMPUTAÇÃO GRÁFICA

Apresentações semelhantes


Apresentação em tema: "UNIVERSIDADE CATÓLICA DE PELOTAS CENTRO POLITÉCNICO COMPUTAÇÃO GRÁFICA"— Transcrição da apresentação:

1 UNIVERSIDADE CATÓLICA DE PELOTAS CENTRO POLITÉCNICO COMPUTAÇÃO GRÁFICA
VISUALIZAÇÃO BIDIMENSIONAL POR ADRIANO KURZ MARON

2 Etapas do Processo de Visualização
ROTEIRO Introdução Conceitos SRO SRU SRD Etapas do Processo de Visualização Instanciamento Recorte Algoritmo de COHEN-SUTHERLAND Mapeamento

3 Processo de Visualização 2D
Introdução Uma imagem bidimensional é a representação gráfica do resultado da aplicação de um conjunto de técnicas sobre estruturas de dados; Essas estruturas possuem todas as informações referentes aos objetos utilizados para compor a imagem; Processo de Visualização 2D Estruturas de Dados dos Objetos Imagem

4 Alguns Conceitos Importantes
Sistema de Referência do Objeto (SRO) O SRO é um espaço de coordenadas adequado à criação dos modelos; Cada modelo têm as suas próprias características, independente da aplicação aonde ele está sendo utilizado; Sistema de Referência do Universo (SRU) É o sistema de referência utilizado por uma determinada aplicação para posicionar os objetos no universo; Exemplo: Um CAD de arquitetura define o tamanho dos objetos em metros ou centímetros;

5 Alguns Conceitos Importantes
Sistema de Referência do Dispositivo (SRD) Utiliza as coordenadas referentes ao dispositivo de saída que está sendo utilizado; Em um dispositivo de vídeo, por exemplo, essas coordenadas podem ser os pixels da tela que podem ser utilizados; Nos hardwares, o sistema de coordenadas é definido de acordo com a resolução definida pelo usuário;

6 Etapas do Processo de Visualização
Instanciamento Permite a criação de cópias a partir do modelo original; Cada cópia recebe o nome de instância; As instâncias de um objeto podem ter alguns de seus parâmetros alterados;

7 Etapas do Processo de Visualização
Instanciamento Geralmente, usa-se tabelas para armazenar as instâncias de um objeto; Essa tabela possui o nome do modelo e seus parâmetros de instanciamento; Os modelos possuem inúmeras formas de armazenamento. As mais comuns são através de rotinas ou de uma lista de retas; Modelo Pos X Pos Y Rotação ... Carro Avião

8 Etapas do Processo de Visualização
Vantagens do Instanciamento Através do instanciamento, torna-se possível diminuir o tamanho total da imagem final, pois não é necessário repetir os modelos, somente armazenam-se seus nomes e seus parâmetros; Possibilidade criar vários objetos diferentes a partir de um único modelo;

9 Etapas do Processo de Visualização
Recorte Permite que seja definida qual a região do desenho que será exibida; Essa técnica é muito usada quando um objeto fica fora da Janela de Seleção (Window);

10 Etapas do Processo de Visualização
Recorte de Retas Calcular a intersecção da reta com todas as bordas da janela de seleção (superior, inferior, esquerda e direita); Caso exista a intersecção, o ponto localizado fora da área de seleção é substituído pelo ponto referente à intersecção; Ponto de Intersecção: Pi (x_int, y_int) Janela de Seleção: (min_x,min_y) – (max_x,max_y) Segmento de Reta: (xi,yi) – (xf,yf) m5 m3 30 Reta m1: (16,18),(6,27) Reta m2 : (13,15),(20,6) Reta m3 : (20,25),(16,36) Reta m4 : (18,18),(34,20) Reta m5 : (24,34),(36,20) m1 m4 m2 10 10 30

11 Etapas do Processo de Visualização
Recorte de Retas Cálculo para o ponto de intersecção com a borda esquerda: x_int = min_x ; m1 = (yf - yi) / (xf - xi); y_int = yi + (min_x - xi) * m1; Cálculo para o ponto de intersecção com a borda direita: x_int = max_x ; m4= (yf - yi) / (xf - xi); y_int = yi + (max_x - xi) * m4; x_int = 10; m1 = (27-18)/(6-16) y_int = 18+(10-16)*-0.9 y_int = 18+(-6)*-0.9 y_int = 18+5,4 => 23,4 x_int = 30; m4 = (20-18)/(34-18) y_int = 18+(12)*0.125 y_int = 18+1,5 => 19,5

12 Etapas do Processo de Visualização
Recorte de Retas Cálculo para o ponto de intersecção com a borda superior: m3 = (xf - xi) / (yf - yi); x_int = xi + (max_y - yi) * m3; y_int = max_y ; Cálculo para o ponto de intersecção com a borda inferior: m2 = (xf - xi) / (yf - yi); x_int = xi + (min_y - yi) * m2; y_int = min_y ; m3 = (16-20)/(36-25) x_int = 20+(5)* -0.36 x_int = 20+(-1.8) x_int = 18.2 y_int = 30 m2 = (20-13)/(6-15) x_int = 13+(-5)* -0.8 x_int = 13+(4) x_int = 17 y_int = 10

13 Etapas do Processo de Visualização
Recorte de Retas Resultado do recorte das retas: Para alguns casos, como o da reta m5, esse algoritmo não faz corretamente o recorte da reta; O algoritmo de COHEN-SUTHERLAND é o responsável por realizar de forma correta o recorte de todos os modelos de retas; m5 m3 30 m1 m4 m2 10 10 30

14 Etapas do Processo de Visualização
Recorte de Retas COHEN-SUTHERLAND O código dos ponto de cada uma das nove áreas é formado por um número de 4 bits da seguinte maneira: Bit 0 = À esquerda da janela Bit 1 = À direita da janela Bit 2 = Abaixo da janela Bit 3 = Acima da janela 1001 1000 1010 0001 0000 0010 0101 0100 0110

15 Etapas do Processo de Visualização
Recorte de Retas COHEN-SUTHERLAND Esse algoritmo possibilita tomar previamente 2 decisões: Verificar se a linha está toda dentro da janela de seleção, através da realização de uma operação OR entre os códigos do início e do final da linha. Se o resultado for 0, então a linha está toda dentro da janela. Verificar se a linha está toda fora da janela de seleção, através da realização de uma operação AND entre os códigos do início e do final da linha. Se o resultado for diferente de 0, então a linha está toda fora da janela. Caso nenhum dos dois casos anteriores se confirme, o algoritmo verifica o posicionamento dos extremos da reta;

16 Etapas do Processo de Visualização
Recorte de Retas COHEN-SUTHERLAND (passo-à-passo) Calcula os códigos de P1 e P2 Se P1 estiver fora da janela: executa o passo 2 Senão: troca P1 por P2. Verifica se o ponto está à esquerda da janela Se não estiver: executa o passo 3. Se estiver: calcula o ponto de intersecção da reta com o lado esquerdo da janela, definindo o novo posicionamento do ponto Executa o passo 6.

17 Etapas do Processo de Visualização
Recorte de Retas COHEN-SUTHERLAND (passo-à-passo) Verifica se o ponto está à direita da janela Se não estiver: executa o passo 4. Se estiver: calcula o ponto de intersecção da reta com o lado direito da janela, definindo o novo posicionamento do ponto Executa o passo 6. Verifica se o ponto está acima da janela Se não estiver: executa o passo 5. Se estiver: calcula o ponto de intersecção da reta com o lado de cima da janela, definindo o novo posicionamento do ponto Executa o passo 6.

18 Etapas do Processo de Visualização
Recorte de Retas COHEN-SUTHERLAND (passo-à-passo) Verifica de o ponto está abaixo da janela Se não estiver: executa o passo 6. Se estiver: calcula o ponto de intersecção da reta com o lado de baixo da janela, definindo o novo posicionamento do ponto Executa o passo 6. Verifica se a nova linha (P1,P2) está toda dentro ou toda fora da janela Recalcula os códigos dos pontos Se (P1 OR P2) == 0: encerra o algoritmo (toda linha dentro) Senão: Se (P1 AND P2) != 0: encerra o algoritmo (toda linha fora) Senão: Executa o passo 1

19 Etapas do Processo de Visualização
Mapeamento Normalmente, após serem realizadas as operações anteriores, as imagens não são compatíveis com a janela de exibição (Viewport) no dispositivo de saída; O mapeamento permite a exibição de um conjunto de instâncias com coordenadas diferentes daquelas nas quais elas foram definidas; Para visualizar a imagem, nesse caso, é necessário a conversão das coordenadas das imagens da janela de seleção, para coordenadas compatíveis com a janela de exibição; A Viewport pode ser do mesmo tamanho do dispositivo de saída, ou pode ser menor, havendo possibilidade de existir várias Viewports em um mesmo dispositivo.

20 Etapas do Processo de Visualização
Mapeamento Um exemplo da necessidade da utilização do mapeamento ocorre a seguir: A Janela de Seleção possui dimensão 1000x1500, enquanto que a Janela de Exibição possui dimensão 640x480.

21 Etapas do Processo de Visualização
Mapeamento Durante a realização do mapeamento, os sistemas de coordenadas SRU e SRD são utilizados Mapeamento para o eixo X:

22 Etapas do Processo de Visualização
Mapeamento Mapeamento para o eixo Y: A etapa de mapeamento realiza esses cálculos em todos os pontos do SRU;

23 Etapas do Processo de Visualização
   Etapas do Processo de Visualização Mapeamento Dependendo da aplicação, as janelas de seleção e de visualização podem variar. Para isso, existem as fórmulas de mapeamento genéricas, definidas a seguir:  Onde: = Menor ponto no eixo X da Janela de Exibição; = Menor ponto no eixo X da Janela de Seleção; = Maior ponto do eixo X da Janela de Exibição; = Maior ponto do eixo X da Janela de Seleção; Obs.: Essas definições são iguais para o eixo Y, somente mudando a indicação do eixo.

24 Etapas do Processo de Visualização
   Etapas do Processo de Visualização Mapeamento Exemplos:

25 Bibliografia Computação Gráfica: Teoria e Prática
   Bibliografia Computação Gráfica: Teoria e Prática Eduardo Azevedo e Aura Conci Computação Gráfica (Versão 2.02) Prof. Dr. Paulo Roberto Gomes Luzzardi Acessado em 04/05/2008 Site do Algoritmo de COHEN-SUTHERLAND


Carregar ppt "UNIVERSIDADE CATÓLICA DE PELOTAS CENTRO POLITÉCNICO COMPUTAÇÃO GRÁFICA"

Apresentações semelhantes


Anúncios Google