![Page 1: Técnicas de Modelagem para Aplicações em Computação Gráfica](https://reader035.vdocuments.com.br/reader035/viewer/2022062723/56813bf6550346895da540cc/html5/thumbnails/1.jpg)
Técnicas de Modelagem para Aplicações em Computação
Gráfica
Joaquim Bento Cavalcante [email protected]
Universidade Federal do CearáDepartamento de Computação
Março 2004
![Page 2: Técnicas de Modelagem para Aplicações em Computação Gráfica](https://reader035.vdocuments.com.br/reader035/viewer/2022062723/56813bf6550346895da540cc/html5/thumbnails/2.jpg)
2
Roteiro
• Conceitos de modelagem• Modelos de decomposição• Modelos de construção• Modelos de fronteira• Conclusões
![Page 3: Técnicas de Modelagem para Aplicações em Computação Gráfica](https://reader035.vdocuments.com.br/reader035/viewer/2022062723/56813bf6550346895da540cc/html5/thumbnails/3.jpg)
Conceitos de modelagem
![Page 4: Técnicas de Modelagem para Aplicações em Computação Gráfica](https://reader035.vdocuments.com.br/reader035/viewer/2022062723/56813bf6550346895da540cc/html5/thumbnails/4.jpg)
4
Definição de modelo
• O que são modelos? – Objetos artificialmente construídos– Facilitam a análise de fenômenos, situações
• Quais são os tipos de modelos?– Modelos físicos - prédios, navios, carros– Modelos moleculares - arranjo de átomos– Modelos matemáticos - equações e dados
• Para que usar modelos? – Estudo de características de coisas reais– Simulação do comportamento de coisas
reais
![Page 5: Técnicas de Modelagem para Aplicações em Computação Gráfica](https://reader035.vdocuments.com.br/reader035/viewer/2022062723/56813bf6550346895da540cc/html5/thumbnails/5.jpg)
5
Modelos computacionais
• Definição– Dados armazenados no computador– Podem representar vários tipos de
modelos
• Modelagem geométrica– Modelagem para resolver problemas
geométricos– Responde a perguntas do tipo:
•a) que parte do corpo é visível para o usuário? •b) qual cor é associada a cada elemento?
![Page 6: Técnicas de Modelagem para Aplicações em Computação Gráfica](https://reader035.vdocuments.com.br/reader035/viewer/2022062723/56813bf6550346895da540cc/html5/thumbnails/6.jpg)
6
Modelos computacionais
• Modelagem de sólidos– Braço da modelagem geométrica– Trata de coisas completas, fechadas– Responde às questões “algoritmicamente”
• Níveis de abstração em modelagem– Nível físico - sólido propriamente dito– Nível contínuo - representação matemática– Nível representação - armazenamento
(pontos, coeficientes, etc…)– Nível implementação - código, estrutura de
dados
![Page 7: Técnicas de Modelagem para Aplicações em Computação Gráfica](https://reader035.vdocuments.com.br/reader035/viewer/2022062723/56813bf6550346895da540cc/html5/thumbnails/7.jpg)
7
Modelos computacionais
• Classificação dos tipos de modelos– Modelos de decomposição
• Uso de primitivas básicas (cubos, etc…)• Sólido descrito através de operações de “gluing”
– Modelos de fronteira• Uso de hierarquia (sólido, faces, arestas, etc…)• Sólido descrito através de seu contorno
– Modelos de construção • Uso de primitivas básicas mais elaboradas (cone,
etc…)• Sólido descrito através de operações de
construção
![Page 8: Técnicas de Modelagem para Aplicações em Computação Gráfica](https://reader035.vdocuments.com.br/reader035/viewer/2022062723/56813bf6550346895da540cc/html5/thumbnails/8.jpg)
Modelos de decomposição
![Page 9: Técnicas de Modelagem para Aplicações em Computação Gráfica](https://reader035.vdocuments.com.br/reader035/viewer/2022062723/56813bf6550346895da540cc/html5/thumbnails/9.jpg)
9
Tipos de modelos
• Enumeração exaustiva– Primitiva básica - cubos de mesmo tamanho– Usadas em renderização volumétrica
(voxels), etc…
• Decomposição celular– Primitiva básica - qualquer célula
(triângulo, quadrilátero, etc…)– Usadas em simulações numéricas (MEF),
etc...
• Subdivisão espacial– Primitiva básica - cubos de tamanho
variável– Usadas em modelagem propriamente dita
![Page 10: Técnicas de Modelagem para Aplicações em Computação Gráfica](https://reader035.vdocuments.com.br/reader035/viewer/2022062723/56813bf6550346895da540cc/html5/thumbnails/10.jpg)
10
Subdivisão espacial
• Quadtrees, Octrees
![Page 11: Técnicas de Modelagem para Aplicações em Computação Gráfica](https://reader035.vdocuments.com.br/reader035/viewer/2022062723/56813bf6550346895da540cc/html5/thumbnails/11.jpg)
11
Subdivisão espacial
• Octree
![Page 12: Técnicas de Modelagem para Aplicações em Computação Gráfica](https://reader035.vdocuments.com.br/reader035/viewer/2022062723/56813bf6550346895da540cc/html5/thumbnails/12.jpg)
12
Subdivisão espacial
• Octree
![Page 13: Técnicas de Modelagem para Aplicações em Computação Gráfica](https://reader035.vdocuments.com.br/reader035/viewer/2022062723/56813bf6550346895da540cc/html5/thumbnails/13.jpg)
13
Características
• Baixa precisão, porque são aproximadas
• Geram modelos válidos• Não é ambíguo e a representação é
única• Não é conciso (árvore com muitas
células)• Realiza operações fechadas
(Booleanas)• Útil como modelagem auxiliar (busca,
localização, etc…)
![Page 14: Técnicas de Modelagem para Aplicações em Computação Gráfica](https://reader035.vdocuments.com.br/reader035/viewer/2022062723/56813bf6550346895da540cc/html5/thumbnails/14.jpg)
Modelos de fronteira
![Page 15: Técnicas de Modelagem para Aplicações em Computação Gráfica](https://reader035.vdocuments.com.br/reader035/viewer/2022062723/56813bf6550346895da540cc/html5/thumbnails/15.jpg)
15
Tipos de modelos
• Baseados em polígonos– Lista de faces
• Baseados em vértices– Lista de vértices
• Baseados em arestas– Aresta “alada” (winged-edge) -
Wed – Meia aresta (half-edge) - Hed
![Page 16: Técnicas de Modelagem para Aplicações em Computação Gráfica](https://reader035.vdocuments.com.br/reader035/viewer/2022062723/56813bf6550346895da540cc/html5/thumbnails/16.jpg)
16
Lista de faces
![Page 17: Técnicas de Modelagem para Aplicações em Computação Gráfica](https://reader035.vdocuments.com.br/reader035/viewer/2022062723/56813bf6550346895da540cc/html5/thumbnails/17.jpg)
17
Lista de faces
![Page 18: Técnicas de Modelagem para Aplicações em Computação Gráfica](https://reader035.vdocuments.com.br/reader035/viewer/2022062723/56813bf6550346895da540cc/html5/thumbnails/18.jpg)
18
Lista de faces
![Page 19: Técnicas de Modelagem para Aplicações em Computação Gráfica](https://reader035.vdocuments.com.br/reader035/viewer/2022062723/56813bf6550346895da540cc/html5/thumbnails/19.jpg)
19
Lista de faces
![Page 20: Técnicas de Modelagem para Aplicações em Computação Gráfica](https://reader035.vdocuments.com.br/reader035/viewer/2022062723/56813bf6550346895da540cc/html5/thumbnails/20.jpg)
20
Lista de faces
![Page 21: Técnicas de Modelagem para Aplicações em Computação Gráfica](https://reader035.vdocuments.com.br/reader035/viewer/2022062723/56813bf6550346895da540cc/html5/thumbnails/21.jpg)
21
Winged-edge
![Page 22: Técnicas de Modelagem para Aplicações em Computação Gráfica](https://reader035.vdocuments.com.br/reader035/viewer/2022062723/56813bf6550346895da540cc/html5/thumbnails/22.jpg)
22
Half-edge
![Page 23: Técnicas de Modelagem para Aplicações em Computação Gráfica](https://reader035.vdocuments.com.br/reader035/viewer/2022062723/56813bf6550346895da540cc/html5/thumbnails/23.jpg)
23
Half-edge
![Page 24: Técnicas de Modelagem para Aplicações em Computação Gráfica](https://reader035.vdocuments.com.br/reader035/viewer/2022062723/56813bf6550346895da540cc/html5/thumbnails/24.jpg)
24
Half-edge
![Page 25: Técnicas de Modelagem para Aplicações em Computação Gráfica](https://reader035.vdocuments.com.br/reader035/viewer/2022062723/56813bf6550346895da540cc/html5/thumbnails/25.jpg)
25
Características
• Precisão muito alta, representação eficiente
• Geram modelos válidos• Não é ambíguo e a representação é
única• Não é muito conciso (Hed é grande,
etc…)• Poderoso para modelagens complexas
![Page 26: Técnicas de Modelagem para Aplicações em Computação Gráfica](https://reader035.vdocuments.com.br/reader035/viewer/2022062723/56813bf6550346895da540cc/html5/thumbnails/26.jpg)
Modelos de construção
![Page 27: Técnicas de Modelagem para Aplicações em Computação Gráfica](https://reader035.vdocuments.com.br/reader035/viewer/2022062723/56813bf6550346895da540cc/html5/thumbnails/27.jpg)
27
Tipos de modelos
• Modelos de semi-espaço– Primitiva básica - semi-espaços (semi-espaço
planar, semi-espaço cilíndrico, etc…)– O modelo é definido pela combinação dos semi-
espaços em uma árvore por op. Booleanas
• Modelos CSG (Constructive Solid Geometry)– Primitiva básica - quaisquer objetos construídos a
partir de uma combinação de semi-espaços– O modelo é definido pela combinação das
primitivas em uma árvore usando op. Booleanas
![Page 28: Técnicas de Modelagem para Aplicações em Computação Gráfica](https://reader035.vdocuments.com.br/reader035/viewer/2022062723/56813bf6550346895da540cc/html5/thumbnails/28.jpg)
28
CSG
![Page 29: Técnicas de Modelagem para Aplicações em Computação Gráfica](https://reader035.vdocuments.com.br/reader035/viewer/2022062723/56813bf6550346895da540cc/html5/thumbnails/29.jpg)
29
CSG
![Page 30: Técnicas de Modelagem para Aplicações em Computação Gráfica](https://reader035.vdocuments.com.br/reader035/viewer/2022062723/56813bf6550346895da540cc/html5/thumbnails/30.jpg)
30
CSG
![Page 31: Técnicas de Modelagem para Aplicações em Computação Gráfica](https://reader035.vdocuments.com.br/reader035/viewer/2022062723/56813bf6550346895da540cc/html5/thumbnails/31.jpg)
31
CSG
![Page 32: Técnicas de Modelagem para Aplicações em Computação Gráfica](https://reader035.vdocuments.com.br/reader035/viewer/2022062723/56813bf6550346895da540cc/html5/thumbnails/32.jpg)
32
CSG
![Page 33: Técnicas de Modelagem para Aplicações em Computação Gráfica](https://reader035.vdocuments.com.br/reader035/viewer/2022062723/56813bf6550346895da540cc/html5/thumbnails/33.jpg)
33
CSG
![Page 34: Técnicas de Modelagem para Aplicações em Computação Gráfica](https://reader035.vdocuments.com.br/reader035/viewer/2022062723/56813bf6550346895da540cc/html5/thumbnails/34.jpg)
34
CSG
![Page 35: Técnicas de Modelagem para Aplicações em Computação Gráfica](https://reader035.vdocuments.com.br/reader035/viewer/2022062723/56813bf6550346895da540cc/html5/thumbnails/35.jpg)
35
CSG
![Page 36: Técnicas de Modelagem para Aplicações em Computação Gráfica](https://reader035.vdocuments.com.br/reader035/viewer/2022062723/56813bf6550346895da540cc/html5/thumbnails/36.jpg)
36
CSG
![Page 37: Técnicas de Modelagem para Aplicações em Computação Gráfica](https://reader035.vdocuments.com.br/reader035/viewer/2022062723/56813bf6550346895da540cc/html5/thumbnails/37.jpg)
37
CSG
![Page 38: Técnicas de Modelagem para Aplicações em Computação Gráfica](https://reader035.vdocuments.com.br/reader035/viewer/2022062723/56813bf6550346895da540cc/html5/thumbnails/38.jpg)
38
Características
• Precisão depende das primitivas, se existirem muitas primitivas a precisão pode ser bem grande
• Podem gerar modelos não-válidos• Não é ambíguo e a representação não é
única para os modelos• É bem mais conciso que as demais, mas
em modelagens práticas tende a crescer• Uma modelagem por CSG pode ser bem
complexa, dependendo do problema
![Page 39: Técnicas de Modelagem para Aplicações em Computação Gráfica](https://reader035.vdocuments.com.br/reader035/viewer/2022062723/56813bf6550346895da540cc/html5/thumbnails/39.jpg)
Conclusões
![Page 40: Técnicas de Modelagem para Aplicações em Computação Gráfica](https://reader035.vdocuments.com.br/reader035/viewer/2022062723/56813bf6550346895da540cc/html5/thumbnails/40.jpg)
40
Conclusões
• Modelar NÃO é somente usar um software
• O tipo de modelagem que se aplica a um caso específico depende de vários fatores: – precisão desejada – memória disponível– custo computacional
• Modelagem é um passo fundamental para aplicações em computação gráfica