Title: 3D Representations
13D Representations 4
CS580 Computer Graphics
- Sung Yong Shin
- Dept. of Computer Science
- KAIST
2Outline
- 1. 3D concepts
- 2. wireframe models
- 3. surface models
- 4. solid models
- Mäntylä, An Introduction to solid modeling,
computer science press (1988) - J.R. Miller, Architectural Issues in Solid
modelers, IEEE CG A, 9, 5,(1989),72-87.
34. Solid Models
- 1. preliminaries
- 2. decomposition models
- 3. constructive models
- 4. boundary models
- 5. hybrid models
44.1 Preliminaries
What is a model? And why?
Very loosely, 3D objects !!!
5- A model is an artificially constructed object
that makes an observation easier. - ?idealization
-
- generality
simplification without loosing essence
general-purpose to support a wide varietyof
applications
6Geometric Modeling
- Many problems are inherently geometric!!!
- Techniques for storing and processing geometric
data are relatively independent - of particular applications essentially identical
techniques to deal with geometric data for
different physical objects - Geometric Modeling!!!
7Solid Modeling
a branch of geometric modeling with emphasis on
general applicability, and complete
representation (of physical solid objects)
? multi-purpose modeling ?
8Three-Level View of Modeling
theory
realization
real world
physical objects
mathematical objects
representation
B-rep CSG decomposition
point-set topology algebraic topology
solids
9Mathematical Models of Solids
- point-set topology 3D solidity of objects
- algebraic topology bounding surfaces of objects
M. Henle, A combinatorial Introduction to
Topology, Freeman and Company, (1979).
10Point-Set Models
-
- Defn A solid is a bounded, closed subset in
E3.
8
closed and bounded with a dangling edge (or
face)
closed and bounded.
closed but not bounded.
too large a class!!!
? Need some restriction.
11Rigidity
- rigid objects
- rigid transformations translations and
rotations - Solids are invariant under rigid
transformations!!!
12Regularity
A
i(A)
R(A)
A set A is said to be regular if A R(A) .
13Observation
- A regular set A is closed!!! Why?
- A regular set may not be bounded!!!
- Can you give a counter-example?
14r-set
- Defn A bounded regular set is said to be an
r-set. - observation
- An r-set may not be connected.
-
- An r-set may not be a useful object.
15Representation of Point Sets
z
x
x0
representational finiteness!!!
y0
y
16Surface-Based Models
algebraic topology!!!
172-manifolds
- Defn A 2-manifold is a topological space
where every point - has a neighborhood topologically
equivalent to an open - disk of E2.
topologically equivalent
closed surface
18Observation
Is A a 2-manifold? No !!! Why?
? An r-set is not necessarily a 2-manifold.
19Realizable 2-manifold
- A r-set
- If b(A) a 2-manifold M, then A is a
realization of M.
topologically equivalent
20(No Transcript)
21Plane Models
A model to represent surfaces for observing
their topological characteristics.
R
void
22(No Transcript)
23Möbius strip
24- A plane model is said to be a subdivision if the
following is true -
- Every edge is identified with one other edge.
- The polygons sharing a vertex form a cycle.
excluding
This guarantees a 2-manifold.
25Orientability
or
excluding Klein bottle
orientable subdivision
realizable 2-manifold
solid
26not realizable
non-orientable
27orientable subdivision realizable 2-manifold
subdivision 2-manifold
plane model
28Planar Graph
29e O(v) f O(v) Homework prove it. ? linear
space complexity
30Representation Schemes
- decomposition models
- constructive models
- boundary models
314.2 Decomposition Models
- exhaustive enumeration
- space subdivision
- binary subdivision
- cell decomposition
32Exhaustive Enumeration
33Space Subdivision
34Octree representation
data elementsin a representativeoctree node
subdivision of athree-dimensionalspace
35Quadtree representation
36Extended representation
- Putting geometric information into leaf cells for
exact representation
37Binary Subdivision
38Cell Decomposition
39an example of cell decomposition
404.3 Constructive Models
- half-space models
- CSG (constructive solid geometry) models
41Half-Space Models
unbounded
? In general,
42CSG (constructive solid geometry)
434.4 Boundary Models
44(No Transcript)
45A vertex-based boundary model
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
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
46An edge-based boundery model
edge e1 e2 e3 e4 e5 e6 e7 e8 e9 e10 e11 e12
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
47Winged-edge data structure (Baumgart)
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 e9
sign -
edge e1 e2 e3 e4 e5 e6 e7 e8 e9 e10 e11 e12
vstart v1 v2 v3 v4 v1 v2 v3 v4 v5 v6 v7 v8
vend v2 v3 v4 v1 v5 v6 v7 v8 v6 v7 v8 v5
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
48vertex 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 e9
sign -
edge e1 e2 e3 e4 e5 e6 e7 e8 e9 e10 e11 e12
vstart v1 v2 v3 v4 v1 v2 v3 v4 v5 v6 v7 v8
vend v2 v3 v4 v1 v5 v6 v7 v8 v6 v7 v8 v5
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
49Winged-edge data structure
edge e1 e2 e3 e4 e5 e6 e7 e8 e9 e10 e11 e12
vstart v1 v2 v3 v4 v1 v2 v3 v4 v5 v6 v7 v8
vend v2 v3 v4 v1 v5 v6 v7 v8 v6 v7 v8 v5
fcw f1 f1 f1 f1 f2 f3 f4 f5 f2 f3 f4 f5
fccw f2 f3 f4 f5 f5 f2 f3 f4 f6 f6 f6 f6
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
pcw e4 e1 e2 e3 e1 e2 e3 e4 e5 e6 e7 e8
pccw e6 e7 e8 e5 e12 e9 e10 e11 e10 e11 e12 e9
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 e9
50v6
?
v5
v7
e10
e6
?
?
e9
v2
v6
e1
e2
?
?
v1
v3
e6
?
v2
edge e1 e2 e3 e4 e5 e6 e7 e8 e9 e10 e11 e12
vstart v1 v2 v3 v4 v1 v2 v3 v4 v5 v6 v7 v8
vend v2 v3 v4 v1 v5 v6 v7 v8 v6 v7 v8 v5
fcw f1 f1 f1 f1 f2 f3 f4 f5 f2 f3 f4 f5
fccw f2 f3 f4 f5 f5 f2 f3 f4 f6 f6 f6 f6
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
pcw e4 e1 e2 e3 e1 e2 e3 e4 e5 e6 e7 e8
pccw e6 e7 e8 e5 e12 e9 e10 e11 e10 e11 e12 e9
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 e9
51Sweep representation
Z
Z
sweep
sweep
X
Y
Y
X
translation and rotation sweep
52(No Transcript)
53(No Transcript)
54Local modification
55CSG interface
decom.
CSG tree
graphical interface
B-rep
CSG interface
CSG tree
B-rep
graphical interface
decom.
sweeping local modification
local modification
56client
server
analytic modeler
visual modeler
exact model
approx. model
analysis
visualization