Computação Gráfica Interativa - Gattass Objetos 3D 3/25/2017 Modelo de Camera do OpenGL
Modelos de Sólidos Decomposição Construtivos Fronteiras Híbridos
Decomposição Exaustiva: Voxels
Computação Gráfica Interativa - Gattass 3/25/2017 Lançamento dos Raios plano de visualização x y z volume dos raios volume dos slices raio Modelo de Camera do OpenGL
Computação Gráfica Interativa - Gattass 3/25/2017 Iluminação de um voxel Modelo de Camera do OpenGL
Classificação do Voxel Computação Gráfica Interativa - Gattass 3/25/2017 Classificação do Voxel Voxel tons e opacidade cor ar Gordura Músculo Osso 255 Branco (255,255,255) Vermelho (255,0,0) Amarelo (255,255,0) 1.0 velocidade ou densidade amplitude 255 Modelo de Camera do OpenGL
Diferentes Funções de Transferência Computação Gráfica Interativa - Gattass 3/25/2017 Diferentes Funções de Transferência Modelo de Camera do OpenGL
Computação Gráfica Interativa - Gattass 3/25/2017 Influência de um Voxel r0 g0 b0 a0 r1 g1 b1 a1 r = 0 g = 0 b = 0 a = 0 r = a0 r0+(1-a0 ) a1 r1 g = a0 g0+(1-a0 ) a1 g1 b = a0 b0+(1-a0 ) a1 b1 a = a0 +(1-a0 ) a1 r = a0 r0 g = a0 g0 b = a0 b0 a = a0 Modelo de Camera do OpenGL
Decomposição Estruturas espaciais Quadtrees
Decomposição Processo de criação da quadtree 1 2 1 2 3 4 3 4 1 2 3 4
Decomposição Processo de criação da quadtree
Classificação do Voxel Computação Gráfica Interativa - Gattass 3/25/2017 Classificação do Voxel Voxel tons e opacidade cor ar Gordura Músculo Osso 255 Branco (255,255,255) Vermelho (255,0,0) Amarelo (255,255,0) 1.0 velocidade ou densidade amplitude 255 Modelo de Camera do OpenGL
Diferentes Funções de Transferência Computação Gráfica Interativa - Gattass 3/25/2017 Diferentes Funções de Transferência Modelo de Camera do OpenGL
Decomposição Exaustiva: Octrees 1 2 3 4 6 7 8 1 2 3 4 5 6 7 8
Decomposição Octrees
Decomposição BSP (binary space partitions) 1 a b 1 g g a a 6 c 2 f f 3 5 e e 7 e 4 d c 4 d c b b f 5 2 6 7 BSP Tree
Decomposição BSP (binary space partitions) BSP Tree a j b f c d g k h out in h i f e c d b a BSP Tree
BSP trees: Binary Space Partion Trees Computação Gráfica Interativa - Gattass 3/25/2017 BSP trees: Binary Space Partion Trees 1 2 3 4 5a 5b 3 1 2 5a 4 5b atrás frente 1 2 3 4 5a 5b 3 4 5b atrás frente 2 5a 1 1 2 3 4 5a 5b 3 2 5a 1 4 5b Modelo de Camera do OpenGL
Computação Gráfica Interativa - Gattass 3/25/2017 Exibição de uma BSP void bspDisplay(bspTree *tree) { if (arvore não é vazia) { if (observador está a frente da raiz) bspDisplay(tree®backChild); DisplayPolygon(tree®root); bspDisplay(tree®frontChild); } else Mostra a árvore de trás, a raiz e a árvore da frente. Mostra a árvore da frente, a raiz e a árvore de atrás. Modelo de Camera do OpenGL
BSP trees: Dois exemplos de exibição Computação Gráfica Interativa - Gattass 3/25/2017 BSP trees: Dois exemplos de exibição 1 2 3 4 5a 5b 5a, 2, 1, 3, 5b, 4 1 2 3 4 5a 5b 4, 5b, 3, 5a, 2, 1 Modelo de Camera do OpenGL
CSG Operações boleanas primitivas
CSG Árvore binária diff un cy bl1 bl2
CSG Visualização: Traçado de Raios
Modelos de Fronteira
Modelos de Fronteira Vértices, Arestas e Faces face aresta vértice
Modelos de Fronteira A superfície não pode ser qualquer! Garrafa de Klein (não orientável)
A vertex-based boundary model coordinates x1 y1 z1 x2 y2 z2 x3 y3 z3 x4 y4 z4 x5 y5 z5 x6 y6 z6 x7 y7 z7 x8 y8 z8 face f1 f2 f3 f4 f5 f6 vertices v1 v2 v3 v4 v6 v2 v1 v5 v7 v3 v2 v6 v8 v4 v3 v7 v5 v1 v4 v8 v8 v7 v6 v5
An edge-based boundery model vertices v1 v2 v2 v3 v3 v4 v4 v1 v1 v5 v2 v6 v3 v7 v4 v8 v5 v6 v6 v7 v7 v8 v8 v5 vertex v1 v2 v3 v4 v5 v6 v7 v8 coordinates x1 y1 z1 x2 y2 z2 x3 y3 z3 x4 y4 z4 x5 y5 z5 x6 y6 z6 x7 y7 z7 x8 y8 z8 face f1 f2 f3 f4 f5 f6 edges e1 e2 e3 e4 e9 e6 e1 e5 e10 e7 e2 e6 e11 e8 e3 e7 e12 e5 e4 e8 e12 e11 e10 e9
Winged-edge data structure (Baumgart) vstart v1 v2 v3 v4 v5 v6 v7 v8 vend v2 v3 v4 v1 v5 v6 v7 v8 ncw e2 e3 e4 e1 e9 e10 e11 e12 e6 e7 e8 e5 nccw e5 e6 e7 e8 e4 e1 e2 e3 e12 e9 e10 e11 vertex v1 v2 v3 v4 v5 v6 v7 v8 coordinates x1 y1 z1 x2 y2 z2 x3 y3 z3 x4 y4 z4 x5 y5 z5 x6 y6 z6 x7 y7 z7 x8 y8 z8 face f1 f2 f3 f4 f5 f6 first edge e1 e9 e6 e7 e12 sign + -
Winged edges vend ncw pccw fccw fcw pcw nccw vstart edge e1 e2 e3 e4 vertex v1 v2 v3 v4 v5 v6 v7 v8 first edge e1 e2 e3 e4 e9 e10 e11 e12 coordinates x1 y1 z1 x2 y2 z2 x3 y3 z3 x4 y4 z4 x5 y5 z5 x6 y6 z6 x7 y7 z7 x8 y8 z8 face f1 f2 f3 f4 f5 f6 first edge e1 e9 e6 e7 e12
Decomposição celular
Decomposição celular vertex v1 v2 v3 v4 v5 v6 v7 v8 coordinates x1 y1 z1 x2 y2 z2 x3 y3 z3 x4 y4 z4 x5 y5 z5 x6 y6 z6 x7 y7 z7 x8 y8 z8 cel c1 c2 c3 c4 c5 c6 vertices v1 v2 v3 v4 v5 v6 …
Um objeto em vários níveis de detalhe
Multi-resolução num mesmo objeto