Objetos 3D. Modelos de Sólidos Construtivos Fronteiras Decomposição Conjunto de pontos no R 3.
-
Upload
mirella-rapoza -
Category
Documents
-
view
242 -
download
23
Transcript of Objetos 3D. Modelos de Sólidos Construtivos Fronteiras Decomposição Conjunto de pontos no R 3.
Objetos 3D
Modelos de Sólidos
• Construtivos
• Fronteiras
• Decomposição
Conjunto de pontos no R3
Construtivos - CSG
primitivas Operações boleanas
CSG
diff
un cy
bl1 bl2
Árvore binária
CSG
Visualização: Traçado de Raios
Por fronteira (BRep, Boudary Representation)
p1
p2p3
Elementos topológicos
Sólido Faces Arestas e vértices
Hierarquia nos elementos topológicos dos modelos de fronteira
Vértices, Arestas e Faces
5e4e
2e3e
6e
8e
9e
12e
11e
1e
7e10e
1v 2v
3v4v
5v 6v
7v8v face
aresta
vértice
Restrições dos modelos de fronteira
Garrafa de Klein (não orientável)
A superfície nãopode ser qualquer!
vertexv1
v2
v3
v4
v5
v6
v7
v8
coordinatesx1 y1 z1
x2 y2 z2
x3 y3 z3
x4 y4 z4
x5 y5 z5
x6 y6 z6
x7 y7 z7
x8 y8 z8
facef1
f2
f3
f4
f5
f6
verticesv1 v2 v3 v4
v6 v2 v1 v5
v7 v3 v2 v6
v8 v4 v3 v7
v5 v1 v4 v8
v8 v7 v6 v5
A vertex-based boundary model
edgee1
e2
e3
e4
e5
e6
e7
e8
e9
e10
e11
e12
verticesv1 v2
v2 v3
v3 v4
v4 v1
v1 v5
v2 v6
v3 v7
v4 v8
v5 v6
v6 v7
v7 v8
v8 v5
vertexv1
v2
v3
v4
v5
v6
v7
v8
coordinatesx1 y1 z1
x2 y2 z2
x3 y3 z3
x4 y4 z4
x5 y5 z5
x6 y6 z6
x7 y7 z7
x8 y8 z8
facef1
f2
f3
f4
f5
f6
edgese1 e2 e3 e4
e9 e6 e1 e5
e10 e7 e2 e6
e11 e8 e3 e7
e12 e5 e4 e8
e12 e11 e10 e9
An edge-based boundery model
vertexv1
v2
v3
v4
v5
v6
v7
v8
coordinatesx1 y1 z1
x2 y2 z2
x3 y3 z3
x4 y4 z4
x5 y5 z5
x6 y6 z6
x7 y7 z7
x8 y8 z8
facef1
f2
f3
f4
f5
f6
first edgee1
e9
e6
e7
e12
e9
sign+++++-
edgee1
e2
e3
e4
e5
e6
e7
e8
e9
e10
e11
e12
vstartv1
v2
v3
v4
v1
v2
v3
v4
v5
v6
v7
v8
vendv2
v3
v4
v1
v5
v6
v7
v8
v6
v7
v8
v5
ncwe2
e3
e4
e1
e9
e10
e11
e12
e6
e7
e8
e5
nccwe5
e6
e7
e8
e4
e1
e2
e3
e12
e9
e10
e11
Winged-edge data structure (Baumgart)
5e4e
2e3e
6e
8e
9e
12e11e
1e
7e10e
1v 2v
3v4v5v 6v
7v8v
)10,11,12,9()8,4,5,12()7,3,8,11()6,2,7,10(
)5,1,6,9()4,3,2,1(
6
5
4
3
2
1
ffffff
vend
ncw
pccw fccw
fcw pcw
nccwvstart
vertexv1
v2
v3
v4
v5
v6
v7
v8
firstedge
e1
e2
e3
e4
e9
e10
e11
e12
coordinatesx1 y1 z1
x2 y2 z2
x3 y3 z3
x4 y4 z4
x5 y5 z5
x6 y6 z6
x7 y7 z7
x8 y8 z8
edgee1
e2
e3
e4
e5
e6
e7
e8
e9
e10
e11
e12
vstartv1
v2
v3
v4
v1
v2
v3
v4
v5
v6
v7
v8
vendv2
v3
v4
v1
v5
v6
v7
v8
v6
v7
v8
v5
fcwf1
f1
f1
f1
f2
f3
f4
f5
f2
f3
f4
f5
fccwf2
f3
f4
f5
f5
f2
f3
f4
f6
f6
f6
f6
ncwe2
e3
e4
e1
e9
e10
e11
e12
e6
e7
e8
e5
nccwe5
e6
e7
e8
e4
e1
e2
e3
e12
e9
e10
e11
pcwe4
e1
e2
e3
e1
e2
e3
e4
e5
e6
e7
e8
pccwe6
e7
e8
e5
e12
e9
e10
e11
e10
e11
e12
e9
facef1
f2
f3
f4
f5
f6
firstedge
e1
e9
e6
e7
e12
e9
Winged edges
Um objeto em vários níveis de detalhe
Multi-resolução num mesmo objeto
Decomposição
Exaustiva: Voxels
Decomposição
Estruturas espaciais
Quadtrees
Decomposição
Processo de criação da quadtree
1 2
3 4 1 2 3 4
1 23 4
Decomposição
Processo de criação da quadtree
Decomposição
Exaustiva: Octrees1 2
3 4
6
7 8
1 2 3 4 5 6 7 8
Decomposição
Octrees
Decomposição
BSP (binary space partitions)
a
bcd
ef
g a
bcd
ef
g
1
2
3
45
6
7
12
a
3
bc
4
d
56
e
7
f
BSP Tree
Decomposição
BSP (binary space partitions)
BSP Tree
a j
b
f
cd
g
kh
ie g
j
k outoutin
h
iinoutin
out
f
in out
ec
d out
outin
b
a
Decomposição celular
Decomposição celular
vertexv1
v2
v3
v4
v5
v6
v7
v8
coordinatesx1 y1 z1
x2 y2 z2
x3 y3 z3
x4 y4 z4
x5 y5 z5
x6 y6 z6
x7 y7 z7
x8 y8 z8
celc1
c2
c3
c4
c5
c6
verticesv1 v2 v3 v4 v5 v6
…
1v 2v
3v4v5v 6v
7v8v
Requisitos
k
kji
evcc
i
icR
ESTRUTURAS ESPACIAISIndexação para cenas com muitos objetos
BSP trees: Binary Space Partion Trees
1
23
4
5a5b
3
12
5a
45b
atrásfrente
1
23
4
5a5b
3
45b
atrásfrente
2frente atrás
5a 1
1
23
4
5a5b
3
2
5a 1
4
5b
Exibição de uma BSP
void bspDisplay(bspTree *tree){ if (arvore não é vazia) { if (observador está a frente da raiz) { bspDisplay(treebackChild); DisplayPolygon(treeroot); bspDisplay(treefrontChild); } else { bspDisplay(treefrontChild); DisplayPolygon(treeroot); bspDisplay(treebackChild); } }}
Mostra a árvore detrás, a raiz e a árvoreda frente.
Mostra a árvore dafrente, a raiz e a árvorede atrás.
BSP trees: Dois exemplos de exibição
1
23
4
5a5b
3
2
5a 1
4
5b
5a, 2, 1, 3, 5b, 4
1
23
4
5a5b
3
2
5a 1
4
5b
4, 5b, 3, 5a, 2, 1