Download as pdf or txt
Download as pdf or txt
You are on page 1of 163

Solid Modeling

Dr. Kailash Jha

1
Solid Modeling ?
 The totality of data needed for particular scope of
problems is called the object model
 A geometric model is a subset of object model
which is deals with purely geometrical
information.
 Solid modeling is a branch of geometrical
modeling that emphasizes the general applicability
of models, and insists on creating only ‘complete’
representation of physical solid objects, i.e.
representations that are adequate for answer
arbitrary geometric questions algorithmically(with
help of interaction with a human user) 2/62
Solid Modeling ?

3/62
Solid Modeling ?
 A solid model is a digital representation of the
geometry of an existing or envisioned physical
object. Solid models are used in many
industries, from entertainment to health care
 They play a major role in the discrete-part
manufacturing industries, where precise models
of parts and assemblies are created using solid
modeling software or more general computer-
aided design (CAD)systems. The design process
is usually incremental
4/62
Solid Modeling ?
 It is a computer program that provides facilities for
storing and manipulating data structures that
represent the geometry of individual objects or
assemblies
 These representations can be created either by a
human through a graphic user interface (GUI), or
specified by software applications via an application
programming interface(API).

5/62
Solid Modeling ?

 Solid modeling is a consistent set of


principles for mathematical and computer
modeling of three-dimensional solids. Solid
modeling is distinguished from related areas
of geometric modeling and computer
graphics by its emphasis on physical fidelity.

6/62
Type of Solid Modeling ?

 Octree
 Voxel
 Constructive Solid Geometry
 Boundary representation
 Feature based design
Properties of Solid Modeling
• Rigidity: Shape of the solid is invariant w.r.t
location/orientation
• Homogeneous 3-dimensionality: The solid
boundaries must be in contact with the
interior. No isolated and dangling edges are
permitted.

8/62
Properties of Solid Model

• Finiteness: A solid must occupy a finite


portion of space. Size is finite and a finite
amount of information can describe the solid
model.
• Closure under rigid motion and regularised
Boolean operations: Movement and Boolean
operations should produce other valid solids.
• Boundary determinism: The boundary must
contain the solid and hence determine the
solid distinctly.
9/62
Properties of Solid Model

• Finite describability: Any valid solid must be


bounded, closed, regular and semi-analytic
subsets of E3. There must be some finite
aspect of E3 models of solids (e.g., a finite
number of "faces") to ensure that they are
representable in computers.

10/62
Parametric Solids
 A parametric surface is a solid in euclidean space
which defined by the parametric equation with three
parameter f:R3->R3presentation.
 Parametric equation of solid can be written as
 X=F(u,v,w)
 Y = G(u,v,w)
 Z= M(u,v,w)
Parametric Solids
Parametric Solids
Tricubic Solids
l m n
P(u, v, w)    a i , j ,k
i
uv wj k

i 0 j 0 k 0

If l=m=n=3, then there are 64


coefficient in each coordinate direction
Tricubic Solids
l m n
P(u, v, w)    a i , j ,k
i
uv w j k

i 0 j 0 k 0
If l=m=n=3, then there are 64
coefficient in each coordinate direction
Sweep Solids?
 Translation Sweep Solid.
 Rotational Sweep Solid
 Sweep along a path

16/62
Generalized translational Sweeping

1 0 0 0
0 1 0 0

P(u, v, w)  X(u, v) Y(u, v) Z(u, v) 1 0 0 1 0
 
l m n 1
Translational Sweep in X-direction

1 0 0 0
P(u, v, w)  X(u, v) Y(u, v) Z(u, v) 1  0 
1 0 0

C 0 0 1 0
 
G

D
H  aw 0 0 1

B
F

A
E
Translational Sweep surface in Y-direction

1 0 0 0
P(u, v, w)  X(u, v) Y(u, v) Z(u, v) 1 0 1 
0 0
0 0 1 0
 
0 aw 0 1
Translational Sweep surface in z-direction

1 0 00
P(u, v, w)  X(u, v) Y(u, v) Z(u, v) 1 0 1 0 
0

0 0 1 0
 
0 0 aw 1
Rotational Surface obtained by rotation about X-
axis by  =2pw

1 0 0 0
0 cos  sin  0
P (u, v, w)  [X(u) Y(u, v) Z(u, v) 1 ]
0  sin  cos  0
 
0 0 0 1

X-axis
Rotational Surface obtained by rotation about Y-
axis by  =2pw

cos  0  sin  0
 0 1 0 0
P (u, v, w)  [X(u, v) Y(u, v) Z(u, v) 1 ]
 sin  0 cos  0
 
 0 0 0 1

Y-axis
Rotational Surface obtained by rotation about z-axis
by  =2pw

 cos  sin  0 0
 sin  cos  0 0
P (u, v, w)  [X(u, v) Y(u, v) Z(u, v) 1 ]
 0 0 1 0
 
 0 0 0 1
Z-axix
Sweeping a profile surface along a path

 1 0 0 0
 0 1 0 0
P (u, v, w)  [X(u, v) Y(u, v) Z(u, v) 1 ]
 0 0 1 0
 
e( w) f ( w) g ( w) 1
Derivation of equation of slid rectangular spring

 1 0 0 0
 0 1 0 0
P (u, v, w)  [ x1  (x2 - x1)u y1 (y2- y1)v 0 1 ]
 0 0 1 0
 
r cos  r cos  aw 1
Sweep a profile surface along a path

Profile (section)

Path (guide)

Sweep feature

26
Creating Solids - Sweep
A Sweep feature requires a profile and a path. The profile will follow the path to create the solid.

Profile (section)

Path (guide)

Ken Youssefi Sweep feature


Introduction to Engineering, E10.
27
Creating Solids – Loft (different profiles)

Round profile Square profile

Round profile

• Sections (profiles) do not have to be


sketched on parallel planes

• All sections must be either closed or


open

Ken Youssefi
Introduction to Engineering, E10.
28
Creating Features from Sketches

Loft in SolidWorks

Ken Youssefi Introduction to Engineering, E10.


29
Solid Modeling Representations
 What is representation scheme of solids?
 Based on assumed mathematical properties,

any scheme of representing solids is a


method for capturing information about the
class of semi-analytic subsets of Euclidean
space. This means all representations are
different ways of organizing the same
geometric and topological data in the form
of a data structure.
Lorensen
Three level view of modeling

31/62
Physical and Mathemetical object of modeling

32/62
Representation view of modeling

33/62
Solid Modeling Representations
 What makes a good solid representation?
 Accurate

 Concise

 Affine invariant

 Easy acquisition

 Guaranteed validity

 Efficient boolean operations

 Efficient display

Lorensen
Representation scheme of a solid
has following properties
 Expressive Power: What objects are included in the
domain D covered by the representation scheme? Is it
possible to extend the domain? One aspect of the
expressive power is the precision of the representation
scheme: how accurately can complicated objects be
modelled?
 Validity: Are all admissible representations valid, i.e.,
do they designate some solids of M? A scheme with this
desirable property is termed syntactically valid as it
enforces validity of all solid descriptions that obey its
syntax rules.
Properties of representation scheme
 Unambiguity and uniqueness: Do all valid representations
model exactly one solid? Do some solids have more that one
valid representation?
 Description languages: What kinds of solid description
languages can be supported in a modelling system based on
the representation scheme? Are they self-contained, i.e.,
directly based on the representations of the scheme, or are
they based on a conversion from other representations?
 Conciseness: How large (in terms of computer storage) do
representations of practically interesting solids become?
(This property is often in contradiction with the precision of
the representation.)
Properties of representation scheme
 Closure of operations: Do solid description and
manipulation operations preserve the validity of solid
representations? How general are the manipulations that
can be supported?

 Computational ease and applicability: What kinds of


algorithms can be written for the representations of the
scheme for, say, computations of Table 1.1? What kinds of
computational complexities are involved? What kinds of
applications are the representations of the scheme suited for?
Of course, we are particularly interested on the “self-
contained” solutions that do not involve a conversion into
some entirely different representation.
Type of Representation schemes
 Wireframe representation
 Voxel representation
 Octrees
 Constructive Solid Geometry
 Boundary Representations
 Feature based representation

38/62
Wireframes

A wireframe model is a skeletal description of a 3D object.


There are no surfaces in a wireframe m odel ; it consists of
only points, lines, and curves that describe the edges of the
object. There is no information regarding the surface. It has
only two tables
(a) vertex table and (b) edge table
Wireframes
With AutoCAD you can create
wireframe models by positioning 2D (planar)
objects anywhere in 3D space. AutoCAD also
provides some 3D wireframe objects, such as 3D
polylines (that can only have a CONTINUOUS
linetype) and splines. Because each object that
makes up a wireframe model must be be
independently drawn and positioned, this type of
modeling can be the most time-consuming.
Wire frame model

v1 x1 y1 z1
v2 x2 y2 z2
v3 x3 y2 z3
Vertex tabel
v4 x4 y2 z4
v5 x5 y2 z5
v6 x6 y2 z6
v3 e9 v7 x7 y2 z7
v7
e7 v8 x8 y2 z6
e3
v8 e1 v1 v1
v4 e10 e2 v2 v2
e3 v3 v4
e4 v4 v1
Edge tabel
e5 v5 v6
e2 e6 e6 v6 v7
e8 e7 v7 v2
e8 v8 v5
e4
v2 e11 e9 v3 v7
v6 e10 v8 v4
e11 v6 y2
e1 e12 e5 e12 v1 v5
v1
v5
WIREFRAME MODELING

Geometric model represented in wireframe model


Wireframes
WIREFRAME MODELING

 Uniqueness problem
 Ambiguity problem
Advantages of Wireframe modeling
 Simple to construct for 2D and simple and
symmetric 3D objects
 Designer needs little training
 System needs little memory
 Take less manipulation time
 Retrieving and editing can be done easy
 Consumes less time
 Best suitable for manipulations as
orthographic isometric and perspective views.
Disadvantages of wireframe modeling

 Image causes confusion


 Cannot get required information from this model
 Hidden line removal features not available
 Not possible for volume and mass calculation,
NC programming cross sectioning etc
 Not suitable to represent complex solids

46/62
Voxels
 Partition space into uniform grid
 Grid cells are called Voxel (like pixels)

 Store properties of solid object with each


voxel
 Occupancy

 Color

 Density

 Temperature

 etc. FvDFH Figure 12.20


Voxels

FvDFH Figure 12.20


Voxels
 Advantages
 Simple, intuitive, unambiguous

 Same complexity for all objects

 Natural acquisition for some applications

 Trivial boolean operations

 Disadvantages
 Approximate

 Not affine invariant

 Large storage requirements

 Expensive display
Voxels
Voxels
Voxels
Voxels
Octrees
 Models space as a tree with 8 children
 Nodes can be 3 types
 Interior Nodes

 Solid

 Empty

54/62
Octrees
 An octree encoding scheme divide regions of
3-D space(usually a cube) in to octants and
stores 8 data elements in each node of the tree.
 Individual elements of a 3-D space are called
volume elements or voxels.
 When all voxels in an octant are of the same
type, this type value is stored in the
corresponding data element of the node. Any
heterogeneous octant is subdivided into octants
and the corresponding data element in the node
points to the next node in the octree.
Octrees
 Models space as a tree with 8 children
 Nodes can be 3 types
 Interior Nodes

 Solid

 Empty

56/62
Octrees

57
Octrees

58
Octrees

59
Octrees

60
Octrees

61
Quatree illustraion in 2D

62
Quadtree Display
 Extend voxel methods
 Slicing

 Isosurface extraction

 Ray casting
Finding neighbor cell
requires traversal of
hierarchy (O(1))

FvDFH Figure 12.25


Building Octrees
 If cube completely inside, return solid node
 If cube completely outside, return empty
node
 Otherwise recur until
maximum depth reached

64/62
Octrees
 Advantages
 Storage space proportional to surface area

 Inside/Outside trivial

 Volume trivial

 CSG relatively simple

 Can approximate any

shape
 Disadvantages
 Blocky appearance

65/62
2D(Uniform voxels Quadtrees)
 Refine resolution of voxels hierarchically
 More concise and efficient for non-

uniform objects

Uniform Voxels Quadtree

FvDFH Figure 12.21


Properties of Octree representation

FvDFH Figure 12.21


Properties of Octree representation

FvDFH Figure 12.21


Properties of Octree representation

FvDFH Figure 12.21


Properties of Octree

FvDFH Figure 12.21


Voxel Vs Octree representation

 Size of building cubes are same for Voxel and different for Octree
 Octree can not be started from scrach,a representation scheme is
needed for it where as in Voxel representation, it is not needed.
 In octree volume is decomposed to get different size of cuboids at
different level which is not needed in in Voxel representation
 For same accuracy the Octree is more concise
 Octree data structure is a tree having eight children where as in
Voxel one level tree is needed in which all cuboids are combined
together to give final model.
 Accuracy of model depends on level of tree in octree where as in
voxel accuracy depends on size of voxel.
 All other properties are all most the same for both.
Constructive Solid Geometry

CSG objects can be represented by


binary trees,
where leaves represent primitives,
and nodes
represent operations.
Constructive Solid Geometry
 Combine simple primitives together using set
operations
 Union, subtraction, intersection

 Intuitive operations for


building more complex
shapes
Constructive Solid Geometry
 Typically represented as binary tree
 Leaves store solids (sphere, cylinder, …)
 Interior nodes are operations union
(union, subtraction, …) or
transformations subtraction rotation

cylinder
sphere cylinder

74/62
CSG Primitives

FvDFH Figure 12.27


BOOLEAN OPERATION

Subtract

Union
Intersection
1- Constructive Solid Geometry

Creation of CSG model

Data structures for the


CSG representation are
based on the binary tree
structure. The CSG tree is
a binary tree with leaf
nodes as primitives and
interior nodes as Boolean
operations
CSG Boolean Operations
 Create a new CSG node joining subtrees
 Union

 Intersection

 Difference

FvDFH Figure 12.27


Ray Tracing CSG Trees
 Assume we have a ray R and a CSG tree T

 If T is a solid,
 compute all intersections of R with T

 return parameter values and normals

 If T is a transformation
 apply inverse transformation to R and recur
 apply inverse transpose of transformation to normals
 return parameter values

 Otherwise T is a boolean operation


 recur on two children to obtain two sets of intervals

 apply operation in T to intervals

 return parameter values.

 Display closest intersection point

79/62
Inside/Outside Test for CSG Trees
 Given a point p and a tree T, determine if p is inside/outside the solid defined by T

 If T is a solid
 Determine if p is inside T and return
 If T is a transformation
 Apply the inverse transformation to p and recur
 Otherwise T is a boolean operation
 Recur to determine inside/outside of left/right children

 If T is Union

 If either child is inside, return inside, else outside

 If T is Intersection

 If both children are inside, return inside, else outside


 If T is Subtraction
 If p is inside left child and outside right child, return inside, else outside

80/62
Application: Computing Volume
 Monte Carlo method
 Put bounding box around object
 Pick n random points inside the box
 Determine if each point is inside/outside
the CSG Tree
 Volume 
# inside
n

81/62
Application: Computing Volume

 # inside
n

82/62
1- Constructive Solid Geometry

1.3 CSG Data Structure

CSG representation are non-unique


Constructive Solid Geometry (CSG)

CSG objects can be


represented by
binary trees,
where leaves
represent primitives,
and nodes
represent
operations.

In this figure, the nodes are labeled for intersection, for


union, and - for difference.
1- Constructive Solid Geometry

Properties of CSG representation


1- Constructive Solid Geometry

Properties of CSG representation


1- Constructive Solid Geometry

Advantages of CSG
1- Constructive Solid Geometry

Disavantages of CSG
Boundary Representation(B-Rep)
B-rep
 These faces are regions or subsets of closed
and orientable surfaces
 A closed surface is one that is continuous
without breaks
 An orientable surface is one in which it is
possible to distinguish two sides by using
the direction of the surface normal to a
point inside or outside of the solid model.
 Each face is bounded by edges and each
edge is bounded by vertices
B-Rep (Complete skin of model)
2- Boundary Representation (B-Rep)
B-rep data structure

93/62
Three tables of Boundary representation

v1 x1 y1 z1
v2 x2 y2 z2
v3 x3 y2 z3
Vertex tabel
v4 x4 y2 z4
v5 x5 y2 z5
v6 x6 y2 z6
v3 e9 v7 x7 y2 z7
v7
e7 v8 x8 y2 z6
e3
f3
v8 Edge tabel
v4 e10 facetable
e1 v1 v1
e2 v2 v2
e3 v3 v4 f1 v1 v2 v3 v4
e2 f5 e6 e4 v4 v1 f2 v5 v6 v7 v8
f1 e8 f2 e5 v5 v6 f3 v3 v4 v6 v7
f6 e6 v6 v7
e4 e7 v7 v2 f4 v4 v5 v6 v2
v2 e11
e8 v8 v5 f5 v2,\ v6 v7 v3
v6 f6 v1 v5 v8 v4
e9 v3 v7
e1 f4
e12 e5 e10 v8 v4
v1 e11 v6 y2
v5
e12 v1 v5
2- Boundary Representation (B-Rep)

Validity of B-Rep
• To ensure topological validation of the boundary model, special
operators are used to create and manipulate the topological
entities. These are called Euler Operators
• The Euler’s Law gives a quantitative relationship among faces,
edges, vertices, loops, bodies or genus in solids

F  E  V  L  2( B  G)
Euler Law

Where

F = number of faces
E = number of edges
V = number of vertices
L = Faces inner loops
B = number of bodies
G = number of genus (handles)
A B-rep model of an object consists of faces, edges, vertices,
loops, genes (handle) and body.

 Vertex: A unique point


(ordered triplet) in space.
 Edge :A finite, non-self
intersecting space curve
bounded by two vertices that
are not necessarily distinct.
 Face :Finite, connected,
non-self intersecting region
of a closed, orientable
surface bounded by one or
more loops.
 Loop :An ordered
alternating sequence of
vertices and edges. A
loop defines non-self
intersecting piecewise
closed space curve which
may be a boundary of a
face.
 Loop is a hole in a face
 Body :An independent
solid. Sometimes called a
shell has a set of faces that
bound single connected
closed volume. A
minimum body is a point
(vortex) which
topologically has one face
one vortex and no edges.
 A point is therefore called
a seminal or singular body.
• Genus : it is topological name for the number of handles or
through holes in an object
TYPES OF MODEL IN THIS SCHEME

There are two types of solid models in this scheme

a) Polyhedral solid or object


• Consists of planer faces connected at straight edges which in
turn are connected at vertices.

b) Curved solid or object:


• Similar to polyhedral objects but with curved faces and
edges.
The total information present in a B-rep model is
classified into topological and geometrical data.,

The topological part of the data provides the


relationship among its objects such as vertices, edges
and faces similar to that used in WFM

Geometric information is usually equations of edges


and faces.
Polyhedral objects are classified in to four class:
a) First class:
• do not have holes
• each face is bounded by a single set of connected edges
b) Second class
• face may have loop
c) Third class
• objects with holes that are not through
d) Fourth class

• Through holes
• Topologically holes are called as handle
• Topological name for no. of handles in object is genus
Curved and Faceted B-rep model

• A closed cylindrical face has one edge and two vertices.


• A spherical face has one vertex and no edges.
• A boundary model of a closed cylinder has three faces (top,
bottom and cylindrical face) two vertices and one edge
connecting two vertices.
• The other edges are for visualization called as limb.
• The boundary model of a sphere consists of one face one
vertex and no edges
Validity Criteria of B-Rep

103/62
Validity Criteria of B-Rep

104/62
Validity Criteria of B-Rep

105/62
Combinatorial criteria for triangulated
face(Stereolithography files)

106/62
Validity of B-rep

107/62
Validity Criteria of B-Rep

108/62
B-Rep must address the following

109/62
2- Boundary Representation (B-Rep)
2- Boundary Representation (B-Rep)
Boundary Representations
 Stores the boundary of a solid
 Geometry: vertex locations

 Topology: connectivity information

 Vertices

 Edges

 Faces

112/62
Boundary Representations
 Constant time adjacency information
 For each vertex,

 Find edges/faces touching vertex

 For each edge,

 Find vertices/faces touching edge

 For each face,

 Find vertices/edges touching face

113/62
Type of B-rep

 Vertex based B-rep


 Edged based B-rep
 Winded edge B-rep
 Half-edged B-rep

114/62
Vertex based B-rep

v1 x1 y1 z1
v2 x2 y2 z2
v3 x3 y2 z3
Vertex tabel
v4 x4 y2 z4
v5 x5 y2 z5
v6 x6 y2 z6
v3 e9 v7 x7 y2 z7
v7
e7 v8 x8 y2 z6
e3
f3
v8 Edge tabel
v4 e10 facetable
e1 v1 v1
e2 v2 v2
e3 v3 v4 f1 v1 v2 v3 v4
e2 f5 e6 e4 v4 v1 f2 v5 v6 v7 v8
f1 e8 f2 e5 v5 v6 f3 v3 v4 v6 v7
f6 e6 v6 v7
e4 e7 v7 v2 f4 v4 v5 v6 v2
v2 e11
e8 v8 v5 f5 v2,\ v6 v7 v3
v6 f6 v1 v5 v8 v4
e9 v3 v7
e1 f4
e12 e5 e10 v8 v4
v1 e11 v6 y2
v5
e12 v1 v5
2- Boundary Representation (B-Rep)
Edged based b-rep
Winged Edge Data Structure
 Each vertex/face points to a single edge
containing that vertex/face

NL NR
N

Left face E Right face

P
PL PR
117/62
Winged Edge Data Structure
WingedEdge {
WingedEdge nextLeft, nextRight,
prevLeft, prevRight;
Face leftFace, rightFace;
Vertex prevVert, nextVert;
}
NL NR
Face { N
WingedEdge edge;
}
Left face E Right face
Vertex {
WingedEdge edge;
} P
PL PR
118/62
Winged Edge Data Structure
 Given a face, find all vertices touching that
face
 Given a vertex, find all
edge-adjacent vertices NL NR
N
 Given a face, find all
adjacent faces Left face E Right face

P
PL PR
119/62
Half Edge Data Structure

NHE

face HE E Flip

PHE
V

120/62
Half Edge Data Structure
HalfEdge {
HalfEdge next, prev, flip;
Face face;
Vertex origin;
Edge edge;
}
Face { NHE
HalfEdge edge; // part of this face
}
Vertex { face HE E Flip
HalfEdge edge; // points away
}
PHE
Edge { V
HalfEdge he;
} 121/62
Half Edge Data Structure
 Given a face, find all vertices touching that
face
 Given a vertex, find all
edge-adjacent vertices NHE
 Given a face, find all
adjacent faces face HE Flip
E

PHE
V
122/62
Half Edge Data Structure
 Very similar to WingedEdge Data Structure,
but edges have unique orientation
 Slightly more storage
 Less conditional operations NHE
 Assumes polygons are oriented
face HE E Flip

PHE
V
123/62
Building a Topological Data Structure

 Must connect adjacent edges/faces/vertices


 Edges are critical in most data structures

 Use a hash table indexed by NHE


two vertices
face HE E Flip

PHE
V
124/62
Boundary Representations

125/62
Boundary Representations
 Advantages
 Explicitly stores neighbor information

 Easy to render

 Easy to calculate volume

 Nice looking surface

 Disadvantages
 CSG very difficult

 Inside/Outside test hard

126/62
Properties of B-rep
 Expressive Power: The modeling space of Boundary
representation depend on the selection of surfaces that can be
used. There is no inherent reason to limit this collection to mere
half-spaces. Hence boundary models can be used to represent
objects from a more general modeling space than that possible in
CSG. Some object that can be represented in CSG have no
convenient representation as Boundary models. Such problem
can by overcome by conversion of CSG into boundary model
 Validity: Validity of boundary models in general very difficult
to eatablish. Validity criteria split into topological contrains and
geometrical constrains. Topological validity can be managed
without large over head, but geometrical validity is
comparatively slow down interactive design.
Properties of B-rep
 Unambiquity and uniqueness: All valid B-rep are
unambiguous. They are not unique.
 Description languages: Boundary models are
tedious to describe directly. It is possible to build
description languages that are based on graphical
drawing and sweep operations or on a CSG-like
input on top of boundary model
 Conciseness: Boundary models of useful objects
become large, especially if curves objects are
approximated with polyhedral models.
Properties of B-rep
 Closures of operations: B-rep are usually not close
under set operations. In this theoretical sense
boundary model description mechanism bas CSG
conversion or set operations are vulnerable. The
nature closure operations in B-rep are Euler operaors
 Computation ease and applicability: B-rep is useful
for generating graphical output, because they readily
include the data needed for driving graphical
display. Analysis algorithm directly based on b-rep
become quite difficult if representation of objects
from more general modelling spaces than polyhedral
must be processed.
CONSTRAINT BASED MODELLING
CONSTRAINT BASED MODELLING
CONSTRAINT BASED MODELLING
CONSTRAINT BASED MODELLING
CONSTRAINT BASED MODELLING
Comparison of CSG and Octree
Sr Octree Representation CSG
1. Initial model is needed Initialmodel is not needed
2. Different sizes of Cuboids CSG primitives(cuboid, wedges,
are used cylinder, sphere, torus,cone) are used
3. Union is used Union, intersection and subtraction
operartion is used
4. Octree is used Binary tree is used
5. Unique Non-unique
6. Approximate Comparatively adjact
7. Storage requirement is Less memory space
comparatively more
8. Domain is comparatively Domain is restricted to CSG primitive
large 135/62
Comparison of B-rep and Octree
Sr Octree Representation Boundary
representation
1. It is volume based It is surface based
representation representation
2. It can be started from scratch, It can be started from
initial model is needed scratch
3. Solid is represented by cuboids Difference faces is
of different sizes needed to represent the
solid which makes a
closed envelop
4. Data structure used is an Graph data structure is
Octree used for B-rep
136/62
Comparison of B-rep and Octree
Sr Octree Representation Boundary representation

5. It is comparatively It is comparatively exact


approximate represestation representation.
6. Validity is comparatively easier Validity is comparative
difficult to maintained
7. Storage requirement is Requires comparatively
comparatively less less space
8. Data structure comparative The neighbouring
support less neighbouring information is easily
information available

137/62
Comparison of B-rep and CSG

138/62
Comparison Representation schemes
Comparison of different representtaions
Different representation by standard
Different representation by standard
Why hybrid modeler
Why hybrid modeler
Architecture for hybrid modeler
Architecture for hybrid modeler
Feature Definition
 Set of faces having distinct topology and geometry
 This the volume of the materil remove in a machining operartion
Feature Definition
Interacting features
Feature based design
Feature based design
 Inside/Outside test
 CSG operations

152/62
Advantages

 Inside/Outside test
 CSG operations
 Union

153/62
Advantages
 No topology to maintain
 Always defines a closed surface!
 Inside/Outside test
 CSG operations
 Union

154/62
Advantages
 No topology to maintain
 Always defines a closed surface!
 Inside/Outside test
 CSG operations
 Union +
+
+ - -
- +
+ - -
+ 155/62
Advantages
 No topology to maintain
 Always defines a closed surface!
 Inside/Outside test
+ +
 CSG operations
 Union + - -
- +
+ - -
+

156/62
Advantages
 No topology to maintain
 Always defines a closed surface!
 Inside/Outside test
+ +
 CSG operations
 Union + -+ -
+ - +
+ -+ - - -
- + +
+ - -
+ 157/62
Advantages
 No topology to maintain
 Always defines a closed surface!
 Inside/Outside test
+
 CSG operations
-- -
 Union +
- - +
- - -- -
-
- -- +
+
+ 158/62
Advantages
 No topology to maintain
 Always defines a closed surface!
 Inside/Outside test
+ +
 CSG operations
 Union + - -
+ + -
 Intersection +
+ + - - - -
- + +
+ - -
+ 159/62
Advantages
 No topology to maintain
 Always defines a closed surface!
 Inside/Outside test
 CSG operations
 Union +
+
 Intersection
-
-
+
+

160/62
Advantages
 No topology to maintain
 Always defines a closed surface!
 Inside/Outside test
+ +
 CSG operations
 Union + - -
+ + -
 Intersection +
+ + - - - -
 Subtraction - + +
+ - -
+ 161/62
Advantages
 No topology to maintain
 Always defines a closed surface!
 Inside/Outside test
- -
 CSG operations
+ +
 Union
+
- +
 Intersection
+ -
+ - +
+
- +
 Subtraction - +
- - -
+
+ 162/62
Advantages

 Inside/Outside test
 CSG operations
 Union

 Intersection +
 Subtraction
- +
+
- - +
+ 163/62

You might also like