You are on page 1of 48

SOLID MODELING-ADVANCED

6/4/2021 I/C: Regalla Srinivasa Prakash 1


Solid representation
• A physical object divides an En (n-dimensional
space) into two portions:
– Interior
– Exterior
which are separated by the object boundary.
Object = Set of points S in E3.
Boundary = bS.
Exterior complement of S is = cS.
Object’s interior = iS.
S=bS  iS
The universal set of points
W = S  cS = iS  bS  cS

6/4/2021 I/C: Regalla Srinivasa Prakash 2


Geometric Closure:
• Defined as kS = iS  bS.
• Ideally, therefore, ks=S.
• But the geometric closure may some times
be not equal to S. When kSS, there is
said to be incompleteness and ambiguity.

+ =

iS bS kS
6/4/2021 I/C: Regalla Srinivasa Prakash 3
Concept of Regularized Set of points (r-set):
• r-sets are “curved polyhedra” with “well-
behaved boundaries” and hence possess
the following properties:
• It is a closed regular set – no dangling
portions
• It is a semi-analytic set – does not oscillate
infinitely fast anywhere in the set; for
example sin(x)<0 is a semi-analytic set but
sin (1/x)<0 is not because the latter
oscillates infinitely as x->0.
6/4/2021 I/C: Regalla Srinivasa Prakash 4
Representation Schemes:
• A representation scheme usually operates on r-sets to produce valid
solid models. For example, a CSG scheme maps valid primitives
into valid solids via boolean operations.
• They are relations that map a valid point set into a valid model
• Classification: A representation scheme can be (1) unambiguous,
complete and unique, (2) unambiguous, complete but not unique, (3)
ambiguous, incomplete and non-unique
• (2) A representation scheme is unambiguous and complete but not
unique if more than one model can represent the object.
• (3) A representation scheme is ambiguous and incomplete if one
model represents many objects, which is true with wireframe
models.
• Formal properties of representation schemes that are useful:
– Domain: geometric coverage of the scheme
– Validity: producing valid solids
– Completeness or unambiguousness: to support analysis and other engg
applications
– Uniqueness: positional or permutational
• Information Properties:
– Conciseness
– Ease of creation
– Efficacy: accessibilityI/C:
6/4/2021
toRegalla
downstream applications
Srinivasa Prakash 5
A C

B
b

C A

a B

6/4/2021 I/C: Regalla Srinivasa Prakash 6


Most commonly used representation schemes:

1) Half-Spaces
2) B-Rep (boundary representation)
3) CSG (Constructive Solid Geometry)
4) Sweeping
5) Analytic Solid Modeling
6) Cell decomposition
7) Octree Encoding
8) Spatial Enumeration
9) Primitive instancing
6/4/2021 I/C: Regalla Srinivasa Prakash 7
FUNDAMENTALS OF SOLID MODELING

• Set Theory
• Regularized Set Operations
• Set Membership Classification

6/4/2021 I/C: Regalla Srinivasa Prakash 8


Set Theory:
• Roster representation of set:
D = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
Read: D is equal to the set of elements 0, 1,
2, …

• Descriptive representation of set:


• D = {x: x = 0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
Read: D is equal to set of elements x such
that x equals to 0, 1, 2, …
6/4/2021 I/C: Regalla Srinivasa Prakash 9
Set Theory:
• cP = {x: x  P}
• P  Q = {x: xP or xQ}
• P  Q = {x: xP and xQ}
• P - Q = {x: xP and x  Q}
• Q - P = {x: xQ and xP}
• Commutative law: P  Q = Q  P
• Associative law:
P  (Q  R)= (P  Q)  R
P  (Q  R)= (P  Q)  R
Distributive law:
P  (Q  R)= (P  Q)  (P  R)
6/4/2021 I/C: Regalla Srinivasa Prakash 10
REGULARIZED SET OPERATIONS:
S is a regular set if and only if
S = kiS = closure of (interior of (S))
When no boundary is used for the set (then
it is called an open set), then
S is a regular open set if and only if
S = ikS = interior of (closure of (S))
P * Q = ki (P  Q ); P * Q = ki (P  Q )
P – * Q = ki (P – Q ); c*P = ki(cP)
In all above equations, (*) denotes
regularization.
6/4/2021 I/C: Regalla Srinivasa Prakash 11
• Another Example of
Regularized Boolean
Operations

6/4/2021 I/C: Regalla Srinivasa Prakash 12


• If the given two sets are already regular
sets, then there is no need to apply “ki”
operations to regularize.

S  S’
i k

iS S’=kiS

S  S’
k i

kS S’=kiS

6/4/2021 I/C: Regalla Srinivasa Prakash 13


POLYHEDRAL OBJECTS
• Four different classes:
1. Simple polyhedra
2. Polyhedra having loops
3. Polyhedra having boundary (blind) holes
and interior holes
4. Polyhedra having through holes or handles

6/4/2021 I/C: Regalla Srinivasa Prakash 14


Examples:

6/4/2021 I/C: Regalla Srinivasa Prakash 15


Set Membership Classification
M[X, S] = (X in S, X on S, X out S)
Where M[.] = membership function
X = candidate set
S = reference set
Applications: line/solid intersection to shade or
calculate mass property calculations of solids
via ray tracing algorithms; solid/solid interaction
for interference checking
The implementation of classification depends on
the representation methodology. Popular are:
1) B-Rep used for representation of X and S
2) CSG used for representation of X and S

6/4/2021 I/C: Regalla Srinivasa Prakash 16


B-Rep

6/4/2021
L I/C: Regalla Srinivasa Prakash 17
CSG
L in R = (L in A)  (L in B)
L on R = ((L on A)  (L on B)) – ((L in A) &
(L on B)) – ((L on A) & (L in B))
L out R = L - (L in R)  (L on R)

6/4/2021 I/C: Regalla Srinivasa Prakash 18


L in A
L on A
L out A

L in B
L on B
L out B
L in R

6/4/2021 I/C: Regalla Srinivasa Prakash 19


The complete set membership classification for this CSG problem:

6/4/2021 I/C: Regalla Srinivasa Prakash 20


HALF SPACE – FORMAL DEFINITION
A half-space is that portion of
an n-dimensional space
obtained by removing that
part lying on one side of an
(n-1)-dimensional hyperplane.
For example, half a Euclidean
space is given by the three-
dimensional region satisfying
x >0, ;
while a half-plane is given by
the two-dimensional region
satisfying x >0 ,

6/4/2021 I/C: Regalla Srinivasa Prakash 21


Set based definition of half-space:
A half-space is defined as a regular point set in E3 as
follows:

H  P : P  E 3 and f ( P )  0 
where
P  point set in E 3
f ( P )  0 defines the surface equation of the
half - space boundaries .

f(P)

6/4/2021 I/C: Regalla Srinivasa Prakash 22


Most widely used half-spaces:
Planar half - space :
H  P : P ( x, z )  E 3 and z  0
Cylindrical half - space :
H  P : P ( x, y, z )  E 3 and x 2  y 2  R 2 
Spherical half - space :
H  P : P ( x, y, z )  E 3 and x 2  y 2  z 2  R 2 
Conical half - space :
H  P : P ( x, y, z )  E 3 and x 2  y 2  [tan / 2 z ]2 
Toroidal half - space :
 P : P ( x, y, z )  E 3 
H  2 2
and x  y  z  R2  R1   4 R R  z  
2 2 2 2 2 2 2 2
2 1

6/4/2021 I/C: Regalla Srinivasa Prakash 23


Unbounded Half-spaces

6/4/2021 I/C: Regalla Srinivasa Prakash 24


n 
S   H i 
 i 1 

6/4/2021 I/C: Regalla Srinivasa Prakash 25


Another example of half-space modeling of
solids: bracket

6/4/2021 I/C: Regalla Srinivasa Prakash 26


Another example of half-spaces modeling of
solids: solid fillet

6/4/2021 I/C: Regalla Srinivasa Prakash 27


A DISJOINT SOLID
• A solid having more than one body is
called as disjoint solid. Thus a hollow
sphere, a cuboid with internal hole, a solid
having two pieces that are completely
disconnected etc. are examples of disjoint
solids.
• Can you create a disjoint solid in
Pro/Engineer?

6/4/2021 I/C: Regalla Srinivasa Prakash 28


6/4/2021 I/C: Regalla Srinivasa Prakash 29
CURVED POLYHEDRA
• If the curved objects are represented by storing the equations of
curves and surfaces of edges and faces, the resulting boundary
scheme is called as exact B-Rep scheme.
• Alternatively, one may use faceted B-Rep (also called as tesselated
representation), in which each curved face is divided into planar
facets. Increasing the number of facets increases accuracy of
display but takes more time.
• Faceted representation is not good for CNC machining because the
machine hardware will do one more level of interpolation resulting in
errors.

6/4/2021 I/C: Regalla Srinivasa Prakash 30


DATA STRUCTURE FOR B-Rep
SOLIDS
TOPOLOGY GEOMETRY
Model
Body
Genus
Face Underlying surface
equation
Loop

Edge Underlying curve


equation
Vertex

6/4/2021 I/C: Regalla Srinivasa Prakash 31


6/4/2021 I/C: Regalla Srinivasa Prakash 32
6/4/2021 I/C: Regalla Srinivasa Prakash 33
6/4/2021 I/C: Regalla Srinivasa Prakash 34
6/4/2021 I/C: Regalla Srinivasa Prakash 35
6/4/2021 I/C: Regalla Srinivasa Prakash 36
6/4/2021 I/C: Regalla Srinivasa Prakash 37
6/4/2021 I/C: Regalla Srinivasa Prakash 38
6/4/2021 I/C: Regalla Srinivasa Prakash 39
6/4/2021 I/C: Regalla Srinivasa Prakash 40
CONSTRUCTIVE SOLID GEOMETRY (CSG)
• Principle: A physical object can be divided into
a set of primitives that can be combined in a
certain order following a set of rules (Boolean
operations) to form the object.
• Primitives themselves are valid CSG models.
Each primitive is also a solid considered to
have been built by a B-Rep process of
combining faces from edges, edges from
vertices.
• Topology is created by r-set Boolean
operations that combine primitives.
• Validity check for CSG solids is much simpler
than B-Rep solids because each primitive is
already a valid solid.
• For example when you combine a hat-head by
Union of a cylinder, cone and a sphere, a valid
hat-head would be produced if just each of
them have positive dimensions.

6/4/2021 I/C: Regalla Srinivasa Prakash 41


Data Structure for CSG Solids:
CSG Trees

6/4/2021 I/C: Regalla Srinivasa Prakash 42


Data Structure for CSG Solids: CSG Trees
How to divide a given solids into primitives?
OP7
OP3
OP3 n = Total nodes

OP7 P4
OP7
P5

P3
OP1 OP1
P3
nL + nR = 2n – 2
P2
P1
P2
P1
Perfect Tree:
nL = nR = n – 1
6/4/2021 I/C: Regalla Srinivasa Prakash 43
SOLID/SOLID INTERSECTION
• The problem is often basically a surface/surface
intersection
• Any parametric surface of a solid can be
represented in a polynomial form and quadratic
form as:
Ax2+By2+Cz2+2Dxy+2Eyz+2Fxz+2Gx+2Hy+2Jz+K=0
F(x,y,z) = [V]T[Q][V] = 0 -> quadratic form
[Q] takes appropriate 4*4 matrix form for each of
planar, cylindrical, spherical, conical and other
surfaces
Intersection results then can be obtained by solving
[V]T([Q1] – [Q2])[V] = 0

6/4/2021 I/C: Regalla Srinivasa Prakash 44


NEIGHBORHOOD INFORMATION

A L A

P B B
L

IN R ON R

6/4/2021 I/C: Regalla Srinivasa Prakash 45


SWEEPING

• A “point set” is swept along a directrix.


1. Translational sweep: Along a straightline
directrix
2. Rotational sweep: axi-symmetric rotation
3. Non-linear sweep: along a curve directrix
4. Hybrid sweep: More than one directrix
5. Invalid Sweep: Produces dangling faces

6/4/2021 I/C: Regalla Srinivasa Prakash 46


6/4/2021 I/C: Regalla Srinivasa Prakash 47
End of the module
• Thank you!
• Any Questions?

6/4/2021 I/C: Regalla Srinivasa Prakash 48

You might also like