40
Técnicas de Modelagem para Aplicações em Computação Gráfica Joaquim Bento Cavalcante Neto [email protected] Universidade Federal do Ceará Departamento de Computação Março 2004

Técnicas de Modelagem para Aplicações em Computação Gráfica Joaquim Bento Cavalcante Neto [email protected] Universidade Federal do Ceará Departamento

Embed Size (px)

Citation preview

Page 1: Técnicas de Modelagem para Aplicações em Computação Gráfica Joaquim Bento Cavalcante Neto joaquimb@lia.ufc.br Universidade Federal do Ceará Departamento

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 Joaquim Bento Cavalcante Neto joaquimb@lia.ufc.br Universidade Federal do Ceará Departamento

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 Joaquim Bento Cavalcante Neto joaquimb@lia.ufc.br Universidade Federal do Ceará Departamento

Conceitos de modelagem

Page 4: Técnicas de Modelagem para Aplicações em Computação Gráfica Joaquim Bento Cavalcante Neto joaquimb@lia.ufc.br Universidade Federal do Ceará Departamento

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 Joaquim Bento Cavalcante Neto joaquimb@lia.ufc.br Universidade Federal do Ceará Departamento

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 Joaquim Bento Cavalcante Neto joaquimb@lia.ufc.br Universidade Federal do Ceará Departamento

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 Joaquim Bento Cavalcante Neto joaquimb@lia.ufc.br Universidade Federal do Ceará Departamento

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 Joaquim Bento Cavalcante Neto joaquimb@lia.ufc.br Universidade Federal do Ceará Departamento

Modelos de decomposição

Page 9: Técnicas de Modelagem para Aplicações em Computação Gráfica Joaquim Bento Cavalcante Neto joaquimb@lia.ufc.br Universidade Federal do Ceará Departamento

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 Joaquim Bento Cavalcante Neto joaquimb@lia.ufc.br Universidade Federal do Ceará Departamento

10

Subdivisão espacial

• Quadtrees, Octrees

Page 11: Técnicas de Modelagem para Aplicações em Computação Gráfica Joaquim Bento Cavalcante Neto joaquimb@lia.ufc.br Universidade Federal do Ceará Departamento

11

Subdivisão espacial

• Octree

Page 12: Técnicas de Modelagem para Aplicações em Computação Gráfica Joaquim Bento Cavalcante Neto joaquimb@lia.ufc.br Universidade Federal do Ceará Departamento

12

Subdivisão espacial

• Octree

Page 13: Técnicas de Modelagem para Aplicações em Computação Gráfica Joaquim Bento Cavalcante Neto joaquimb@lia.ufc.br Universidade Federal do Ceará Departamento

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 Joaquim Bento Cavalcante Neto joaquimb@lia.ufc.br Universidade Federal do Ceará Departamento

Modelos de fronteira

Page 15: Técnicas de Modelagem para Aplicações em Computação Gráfica Joaquim Bento Cavalcante Neto joaquimb@lia.ufc.br Universidade Federal do Ceará Departamento

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 Joaquim Bento Cavalcante Neto joaquimb@lia.ufc.br Universidade Federal do Ceará Departamento

16

Lista de faces

Page 17: Técnicas de Modelagem para Aplicações em Computação Gráfica Joaquim Bento Cavalcante Neto joaquimb@lia.ufc.br Universidade Federal do Ceará Departamento

17

Lista de faces

Page 18: Técnicas de Modelagem para Aplicações em Computação Gráfica Joaquim Bento Cavalcante Neto joaquimb@lia.ufc.br Universidade Federal do Ceará Departamento

18

Lista de faces

Page 19: Técnicas de Modelagem para Aplicações em Computação Gráfica Joaquim Bento Cavalcante Neto joaquimb@lia.ufc.br Universidade Federal do Ceará Departamento

19

Lista de faces

Page 20: Técnicas de Modelagem para Aplicações em Computação Gráfica Joaquim Bento Cavalcante Neto joaquimb@lia.ufc.br Universidade Federal do Ceará Departamento

20

Lista de faces

Page 21: Técnicas de Modelagem para Aplicações em Computação Gráfica Joaquim Bento Cavalcante Neto joaquimb@lia.ufc.br Universidade Federal do Ceará Departamento

21

Winged-edge

Page 22: Técnicas de Modelagem para Aplicações em Computação Gráfica Joaquim Bento Cavalcante Neto joaquimb@lia.ufc.br Universidade Federal do Ceará Departamento

22

Half-edge

Page 23: Técnicas de Modelagem para Aplicações em Computação Gráfica Joaquim Bento Cavalcante Neto joaquimb@lia.ufc.br Universidade Federal do Ceará Departamento

23

Half-edge

Page 24: Técnicas de Modelagem para Aplicações em Computação Gráfica Joaquim Bento Cavalcante Neto joaquimb@lia.ufc.br Universidade Federal do Ceará Departamento

24

Half-edge

Page 25: Técnicas de Modelagem para Aplicações em Computação Gráfica Joaquim Bento Cavalcante Neto joaquimb@lia.ufc.br Universidade Federal do Ceará Departamento

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 Joaquim Bento Cavalcante Neto joaquimb@lia.ufc.br Universidade Federal do Ceará Departamento

Modelos de construção

Page 27: Técnicas de Modelagem para Aplicações em Computação Gráfica Joaquim Bento Cavalcante Neto joaquimb@lia.ufc.br Universidade Federal do Ceará Departamento

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 Joaquim Bento Cavalcante Neto joaquimb@lia.ufc.br Universidade Federal do Ceará Departamento

28

CSG

Page 29: Técnicas de Modelagem para Aplicações em Computação Gráfica Joaquim Bento Cavalcante Neto joaquimb@lia.ufc.br Universidade Federal do Ceará Departamento

29

CSG

Page 30: Técnicas de Modelagem para Aplicações em Computação Gráfica Joaquim Bento Cavalcante Neto joaquimb@lia.ufc.br Universidade Federal do Ceará Departamento

30

CSG

Page 31: Técnicas de Modelagem para Aplicações em Computação Gráfica Joaquim Bento Cavalcante Neto joaquimb@lia.ufc.br Universidade Federal do Ceará Departamento

31

CSG

Page 32: Técnicas de Modelagem para Aplicações em Computação Gráfica Joaquim Bento Cavalcante Neto joaquimb@lia.ufc.br Universidade Federal do Ceará Departamento

32

CSG

Page 33: Técnicas de Modelagem para Aplicações em Computação Gráfica Joaquim Bento Cavalcante Neto joaquimb@lia.ufc.br Universidade Federal do Ceará Departamento

33

CSG

Page 34: Técnicas de Modelagem para Aplicações em Computação Gráfica Joaquim Bento Cavalcante Neto joaquimb@lia.ufc.br Universidade Federal do Ceará Departamento

34

CSG

Page 35: Técnicas de Modelagem para Aplicações em Computação Gráfica Joaquim Bento Cavalcante Neto joaquimb@lia.ufc.br Universidade Federal do Ceará Departamento

35

CSG

Page 36: Técnicas de Modelagem para Aplicações em Computação Gráfica Joaquim Bento Cavalcante Neto joaquimb@lia.ufc.br Universidade Federal do Ceará Departamento

36

CSG

Page 37: Técnicas de Modelagem para Aplicações em Computação Gráfica Joaquim Bento Cavalcante Neto joaquimb@lia.ufc.br Universidade Federal do Ceará Departamento

37

CSG

Page 38: Técnicas de Modelagem para Aplicações em Computação Gráfica Joaquim Bento Cavalcante Neto joaquimb@lia.ufc.br Universidade Federal do Ceará Departamento

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 Joaquim Bento Cavalcante Neto joaquimb@lia.ufc.br Universidade Federal do Ceará Departamento

Conclusões

Page 40: Técnicas de Modelagem para Aplicações em Computação Gráfica Joaquim Bento Cavalcante Neto joaquimb@lia.ufc.br Universidade Federal do Ceará Departamento

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