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

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

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:

Apresentações semelhantes


Apresentação em tema: "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:"— Transcrição da apresentação:

1

2 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: Aula 6: Representação 3D Parte 3: Projeções em Perspectiva Prof. Dr. rer.nat. Aldo von Wangenheim

3 Disciplina Computação Gráfica Curso de Ciência da Camputação INE/CTC/UFSC The Cyclops Project German-Brazilian Cooperation Programme on IT CNPq GMD DLR Prof. Dr. rer.nat. Aldo v. Wangenheim - Departamento de Informática e Estatística - INE/CTC/UFSC VRC - 3D Viewing Reference Coordinates 6.7. Conceitos Básicos em Projeção em Perspectiva n VPN u v (U max V max ) (U min V min ) CW Window View Plane VRP uv: Plano de Projeção

4 Disciplina Computação Gráfica Curso de Ciência da Camputação INE/CTC/UFSC The Cyclops Project German-Brazilian Cooperation Programme on IT CNPq GMD DLR Prof. Dr. rer.nat. Aldo v. Wangenheim - Departamento de Informática e Estatística - INE/CTC/UFSC 6.7. Conceitos Básicos em Projeção em Perspectiva n VPN CW COP Center of Projection DOP Projeção em Perspectiva: Pirâmide Infinita de Projeção Projeção determinada por raios que convergem para o centro de projeção COP

5 Disciplina Computação Gráfica Curso de Ciência da Camputação INE/CTC/UFSC The Cyclops Project German-Brazilian Cooperation Programme on IT CNPq GMD DLR Prof. Dr. rer.nat. Aldo v. Wangenheim - Departamento de Informática e Estatística - INE/CTC/UFSC 6.7. Projeção em Perspectiva (Impressão Visual) Objetos distantes aparecem menores, desvanecedndo à distância Objetos distorcem-se quando vistos de forma oblíqua

6 Disciplina Computação Gráfica Curso de Ciência da Camputação INE/CTC/UFSC The Cyclops Project German-Brazilian Cooperation Programme on IT CNPq GMD DLR Prof. Dr. rer.nat. Aldo v. Wangenheim - Departamento de Informática e Estatística - INE/CTC/UFSC 6.7. Projeção em Perspectiva (Plano de Projeção)

7 Disciplina Computação Gráfica Curso de Ciência da Camputação INE/CTC/UFSC The Cyclops Project German-Brazilian Cooperation Programme on IT CNPq GMD DLR Prof. Dr. rer.nat. Aldo v. Wangenheim - Departamento de Informática e Estatística - INE/CTC/UFSC 6.7. Projeção em Perspectiva (Projeção dos Pontos) A)Realizamos os 3 primeiros passos do método para projeção paralela: 1.Translade para a origem 1.Translade COP para a origem 2.Determine VPN Decomponha e determine os ângulos de VPN com X e YDecomponha e determine os ângulos de VPN com X e Y 3.Rotacione o mundo em torno de X e Y de forma a alinhar VPN com o eixo Z B)Projetamos uma linha imaginária de cada ponto do objeto ao e calculamos a intersecção com o Plano de Projeção. B)Projetamos uma linha imaginária de cada ponto do objeto ao COP e calculamos a intersecção com o Plano de Projeção.

8 Disciplina Computação Gráfica Curso de Ciência da Camputação INE/CTC/UFSC The Cyclops Project German-Brazilian Cooperation Programme on IT CNPq GMD DLR Prof. Dr. rer.nat. Aldo v. Wangenheim - Departamento de Informática e Estatística - INE/CTC/UFSC COP 6.7. Projeção em Perspectiva (Projeção dos Pontos)

9 Disciplina Computação Gráfica Curso de Ciência da Camputação INE/CTC/UFSC The Cyclops Project German-Brazilian Cooperation Programme on IT CNPq GMD DLR Prof. Dr. rer.nat. Aldo v. Wangenheim - Departamento de Informática e Estatística - INE/CTC/UFSC 6.7. Projeção em Perspectiva (Projeção dos Pontos) O cálculo a intersecção da linha P(x,y,z) com o Plano de Projeção pode ser realizado de duas formas:O cálculo a intersecção da linha P(x,y,z) COP com o Plano de Projeção pode ser realizado de duas formas: –: Supomos COP na origem e podemos reduzir o cálculo a duas fórmulas (projeções e ) ou uma matriz homogênea –Especial: Supomos COP na origem e podemos reduzir o cálculo a duas fórmulas (projeções x p e y p ) ou uma matriz homogênea M PER –: COP está em qualquer lugar, porém o Plano de Projeção é perpendicular a. Neste caso podemos usar uma matriz que é o caso geral de –Geral: COP está em qualquer lugar, porém o Plano de Projeção é perpendicular a z. Neste caso podemos usar uma matriz M GER que é o caso geral de M PER

10 Disciplina Computação Gráfica Curso de Ciência da Camputação INE/CTC/UFSC The Cyclops Project German-Brazilian Cooperation Programme on IT CNPq GMD DLR Prof. Dr. rer.nat. Aldo v. Wangenheim - Departamento de Informática e Estatística - INE/CTC/UFSC P(x,y,z) COP xpxp d Plano de Projeção x z 6.7. Projeção em Perspectiva (Caso Especial) COP z P(x,y,z) Plano de Projeção y ypyp

11 Disciplina Computação Gráfica Curso de Ciência da Camputação INE/CTC/UFSC The Cyclops Project German-Brazilian Cooperation Programme on IT CNPq GMD DLR Prof. Dr. rer.nat. Aldo v. Wangenheim - Departamento de Informática e Estatística - INE/CTC/UFSC 6.7. Projeção em Perspectiva (Caso Especial)

12 Disciplina Computação Gráfica Curso de Ciência da Camputação INE/CTC/UFSC The Cyclops Project German-Brazilian Cooperation Programme on IT CNPq GMD DLR Prof. Dr. rer.nat. Aldo v. Wangenheim - Departamento de Informática e Estatística - INE/CTC/UFSC

13 Disciplina Computação Gráfica Curso de Ciência da Camputação INE/CTC/UFSC The Cyclops Project German-Brazilian Cooperation Programme on IT CNPq GMD DLR Prof. Dr. rer.nat. Aldo v. Wangenheim - Departamento de Informática e Estatística - INE/CTC/UFSC 6.7. Projeção em Perspectiva (Caso Especial)

14 Disciplina Computação Gráfica Curso de Ciência da Camputação INE/CTC/UFSC The Cyclops Project German-Brazilian Cooperation Programme on IT CNPq GMD DLR Prof. Dr. rer.nat. Aldo v. Wangenheim - Departamento de Informática e Estatística - INE/CTC/UFSC 6.7. Projeção em Perspectiva (Caso Geral) P(x,y,z) COP arbitrário Q P p = (x p, y p, z p ) x ou y z (d x, d y, d z ) (0, 0, z p )

15 Disciplina Computação Gráfica Curso de Ciência da Camputação INE/CTC/UFSC The Cyclops Project German-Brazilian Cooperation Programme on IT CNPq GMD DLR Prof. Dr. rer.nat. Aldo v. Wangenheim - Departamento de Informática e Estatística - INE/CTC/UFSC Para o cálculo do caso geral supomos que COP está a uma distância escalar Q do ponto (0, 0, z p ) onde o plano de projeção intersecta o eixo z. Esta distância é vetorialmente representada por (d x, d y, d z ). Neste caso podemos reformular M PER em coordenadas homogêneas da seguinte forma (veja Foley & van Dam para dedução) gerando M GER : 6.7. Projeção em Perspectiva (Caso Geral)

16 Disciplina Computação Gráfica Curso de Ciência da Camputação INE/CTC/UFSC The Cyclops Project German-Brazilian Cooperation Programme on IT CNPq GMD DLR Prof. Dr. rer.nat. Aldo v. Wangenheim - Departamento de Informática e Estatística - INE/CTC/UFSC

17 Disciplina Computação Gráfica Curso de Ciência da Camputação INE/CTC/UFSC The Cyclops Project German-Brazilian Cooperation Programme on IT CNPq GMD DLR Prof. Dr. rer.nat. Aldo v. Wangenheim - Departamento de Informática e Estatística - INE/CTC/UFSC 1.Translade COP para a origem 2.Determine os ângulos de VPN com X e Y 3.Rotacione o mundo em torno de X e Y de forma a alinhar VPN com o eixo Z 4.Projete, calculando e usando. 4.Projete, calculando x p e y p usando 6.2. 5.Normalize e (coordenadas de window) 5.Normalize x p e y p (coordenadas de window) 6.Clippe 2D 7.Transforme para coordenadas de Viewport 6.8. Algoritmo Projeção em Perspectiva

18 Disciplina Computação Gráfica Curso de Ciência da Camputação INE/CTC/UFSC The Cyclops Project German-Brazilian Cooperation Programme on IT CNPq GMD DLR Prof. Dr. rer.nat. Aldo v. Wangenheim - Departamento de Informática e Estatística - INE/CTC/UFSC x z y 0. Plano de Projeção Qualquer. VRP COP

19 Disciplina Computação Gráfica Curso de Ciência da Camputação INE/CTC/UFSC The Cyclops Project German-Brazilian Cooperation Programme on IT CNPq GMD DLR Prof. Dr. rer.nat. Aldo v. Wangenheim - Departamento de Informática e Estatística - INE/CTC/UFSC 1. Translade COP para a origem. Translade o mundo com COP VRP COP x z y

20 Disciplina Computação Gráfica Curso de Ciência da Camputação INE/CTC/UFSC The Cyclops Project German-Brazilian Cooperation Programme on IT CNPq GMD DLR Prof. Dr. rer.nat. Aldo v. Wangenheim - Departamento de Informática e Estatística - INE/CTC/UFSC 2. Determine VPN. Determine  x Determine  y xx yy VRP COP x z y

21 Disciplina Computação Gráfica Curso de Ciência da Camputação INE/CTC/UFSC The Cyclops Project German-Brazilian Cooperation Programme on IT CNPq GMD DLR Prof. Dr. rer.nat. Aldo v. Wangenheim - Departamento de Informática e Estatística - INE/CTC/UFSC 3. Rotacione o mundo em torno de X e Y de forma a alinhar VPN com o eixo Z z x y COP

22 Disciplina Computação Gráfica Curso de Ciência da Camputação INE/CTC/UFSC The Cyclops Project German-Brazilian Cooperation Programme on IT CNPq GMD DLR Prof. Dr. rer.nat. Aldo v. Wangenheim - Departamento de Informática e Estatística - INE/CTC/UFSC 4..... o resto é fácil..... z x y COP

23 Disciplina Computação Gráfica Curso de Ciência da Camputação INE/CTC/UFSC The Cyclops Project German-Brazilian Cooperation Programme on IT CNPq GMD DLR Prof. Dr. rer.nat. Aldo v. Wangenheim - Departamento de Informática e Estatística - INE/CTC/UFSC 6.9. Clipping em 3D: Volume Canônico Até agora vimos como fazer para calcular a projeção de todo um mundoAté agora vimos como fazer para calcular a projeção de todo um mundo –Clipping tinha de ser feito em 2d: + Processamento Para Clipping em 3D temos de definir um Volume do Mundo que deverá ser representadoPara Clipping em 3D temos de definir um Volume do Mundo que deverá ser representado –Denominado de Volume Canônico –É um cubo para Projeções Paralelas –É uma Pirâmide Truncada para Proj. em Perspectiva

24 Disciplina Computação Gráfica Curso de Ciência da Camputação INE/CTC/UFSC The Cyclops Project German-Brazilian Cooperation Programme on IT CNPq GMD DLR Prof. Dr. rer.nat. Aldo v. Wangenheim - Departamento de Informática e Estatística - INE/CTC/UFSC 6.9.1. Clipping em Projeções Paralelas Em projeções paralelas podemos utilizar um paralelepípedo como volume canônico.Em projeções paralelas podemos utilizar um paralelepípedo como volume canônico. –Definimos um subvolume antes do plano de projeção e outro depois Neste caso podemos normalizar o volume antes de realizar a projeção, ao invés de normalizar no window.Neste caso podemos normalizar o volume antes de realizar a projeção, ao invés de normalizar no window. Fácil de fazer clipping.Fácil de fazer clipping.

25 Disciplina Computação Gráfica Curso de Ciência da Camputação INE/CTC/UFSC The Cyclops Project German-Brazilian Cooperation Programme on IT CNPq GMD DLR Prof. Dr. rer.nat. Aldo v. Wangenheim - Departamento de Informática e Estatística - INE/CTC/UFSC z = -1 z = 1

26 Disciplina Computação Gráfica Curso de Ciência da Camputação INE/CTC/UFSC The Cyclops Project German-Brazilian Cooperation Programme on IT CNPq GMD DLR Prof. Dr. rer.nat. Aldo v. Wangenheim - Departamento de Informática e Estatística - INE/CTC/UFSC 6.9.1. Clipping em Projeções Paralelas: Cohen-Stherland Em projeções paralelas podemos extender o Algoritmo de Cohen-Sutherland para 6 bits englobando o volume canônico.Em projeções paralelas podemos extender o Algoritmo de Cohen-Sutherland para 6 bits englobando o volume canônico. Extensão bastante simple de se fazer.Extensão bastante simple de se fazer. Computacionalmente eficiente.Computacionalmente eficiente. 0 0 Window 1 0 0 1 0 0 0 1 0 1 1 0 0 01 0 0 0 1 0 0 1 1 00 1 0 0 Bit 1: left Bit 2: right Bit 3: below Bit 4: above

27 Disciplina Computação Gráfica Curso de Ciência da Camputação INE/CTC/UFSC The Cyclops Project German-Brazilian Cooperation Programme on IT CNPq GMD DLR Prof. Dr. rer.nat. Aldo v. Wangenheim - Departamento de Informática e Estatística - INE/CTC/UFSC 6.9.1. Clipping em Projeções Paralelas: Cohen-Stherland Bit 1 - Ponto está acima do volume canônico Bit 1 - Ponto está acima do volume canônico y > 1 Bit 2 - Ponto está abaixo do volume canônico Bit 2 - Ponto está abaixo do volume canônico y < -1 Bit 3 - Ponto está à direita do volume canônico Bit 3 - Ponto está à direita do volume canônico x > 1 Bit 4 - Ponto está à esquerda do volume canônico Bit 4 - Ponto está à esquerda do volume canônico x < -1 Bit 5 - Ponto está à frente do volume canônico Bit 5 - Ponto está à frente do volume canônico z > 1 Bit 6 - Ponto está atrás do volume canônico Bit 6 - Ponto está atrás do volume canônico z < -1

28 Disciplina Computação Gráfica Curso de Ciência da Camputação INE/CTC/UFSC The Cyclops Project German-Brazilian Cooperation Programme on IT CNPq GMD DLR Prof. Dr. rer.nat. Aldo v. Wangenheim - Departamento de Informática e Estatística - INE/CTC/UFSC 6.9.2. Clipping em Projeções em Perspectiva Para realizar o clipping em perspectiva temos de definir uma pirâmide truncada como volume canônico.Para realizar o clipping em perspectiva temos de definir uma pirâmide truncada como volume canônico. –Cálculo menos trivial 2 Enfoques:2 Enfoques: –Métodos genéricos utilizando a pirâmide diretamente –Métodos que transformam a pirâmide em um cubo

29 Disciplina Computação Gráfica Curso de Ciência da Camputação INE/CTC/UFSC The Cyclops Project German-Brazilian Cooperation Programme on IT CNPq GMD DLR Prof. Dr. rer.nat. Aldo v. Wangenheim - Departamento de Informática e Estatística - INE/CTC/UFSC

30 Disciplina Computação Gráfica Curso de Ciência da Camputação INE/CTC/UFSC The Cyclops Project German-Brazilian Cooperation Programme on IT CNPq GMD DLR Prof. Dr. rer.nat. Aldo v. Wangenheim - Departamento de Informática e Estatística - INE/CTC/UFSC Para clipar os dados no volume canônico utilizamos o algoritmo de Cyrus-Beck ou Liang-Barsky.Para clipar sem modificar os dados no volume canônico utilizamos o algoritmo de Cyrus-Beck ou Liang-Barsky. Ao invés de calcularmos intersecção com as linhas que definem o Window (em forma paramétrica), calculamos interseção com os planos que definem o volume canônico (também em forma paramétrica)Ao invés de calcularmos intersecção com as linhas que definem o Window (em forma paramétrica), calculamos interseção com os planos que definem o volume canônico (também em forma paramétrica) 6.9.2. Clipping em Projeções em Perspectiva

31 Disciplina Computação Gráfica Curso de Ciência da Camputação INE/CTC/UFSC The Cyclops Project German-Brazilian Cooperation Programme on IT CNPq GMD DLR Prof. Dr. rer.nat. Aldo v. Wangenheim - Departamento de Informática e Estatística - INE/CTC/UFSC Para clipar podemos normalizar os dados do volume canônico para transformá-lo em um paralelepípedo.Para clipar em coordenadas homogêneas podemos normalizar os dados do volume canônico para transformá-lo em um paralelepípedo. Feito isto podemos utilizar uma clipagem simples e eficiente como Cohen-Sutherland ou mesmo versões mais eficientes de Liang ou Cyrus.Feito isto podemos utilizar uma clipagem simples e eficiente como Cohen-Sutherland ou mesmo versões mais eficientes de Liang ou Cyrus. 6.9.2. Clipping em Projeções em Perspectiva

32 Disciplina Computação Gráfica Curso de Ciência da Camputação INE/CTC/UFSC The Cyclops Project German-Brazilian Cooperation Programme on IT CNPq GMD DLR Prof. Dr. rer.nat. Aldo v. Wangenheim - Departamento de Informática e Estatística - INE/CTC/UFSC PRP Plano de Projeção y -z A B D (1, -1) C (-1, -1) d z min 6.9.2. Clipping em Projeções em Perspectiva: Normalizando a pirâmide canônica

33 Disciplina Computação Gráfica Curso de Ciência da Camputação INE/CTC/UFSC The Cyclops Project German-Brazilian Cooperation Programme on IT CNPq GMD DLR Prof. Dr. rer.nat. Aldo v. Wangenheim - Departamento de Informática e Estatística - INE/CTC/UFSC Plano de Projeção y -z A’ B’ D (1, -1) C (-1, -1) z min 6.9.2. Clipping em Projeções em Perspectiva: Normalizando a pirâmide canônica

34 Disciplina Computação Gráfica Curso de Ciência da Camputação INE/CTC/UFSC The Cyclops Project German-Brazilian Cooperation Programme on IT CNPq GMD DLR Prof. Dr. rer.nat. Aldo v. Wangenheim - Departamento de Informática e Estatística - INE/CTC/UFSC 6.9.2. Clipping em Projeções em Perspectiva: Normalizando a pirâmide canônica

35 Disciplina Computação Gráfica Curso de Ciência da Camputação INE/CTC/UFSC The Cyclops Project German-Brazilian Cooperation Programme on IT CNPq GMD DLR Prof. Dr. rer.nat. Aldo v. Wangenheim - Departamento de Informática e Estatística - INE/CTC/UFSC Superfícies Bicúbicas 3D –Splines –Bézier Exercício: Implemente projeção em perspectiva realizando Clipping somente em 2D. 6.10. Próxima Aula:


Carregar ppt "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:"

Apresentações semelhantes


Anúncios Google