solid model design
TRANSCRIPT
-
8/4/2019 Solid Model Design
1/28
1
GIRIJANANDA CHOWDHURY INSTITUTE OF
MANAGEMENT AND TECHNOLOGY
HATHKHOWAPARA, AZARA, GUWAHATI-17
DEPARTMENT OF MECHANICAL ENGINEERING
GENERAL PROFICIENCYPROJECT ON
SOLID MODEL DESIGN
Group Members: 5th
Sem Mechanical
NAME ROLL NO.
PULAKESH CHETIA 152
TRINAYAN SARMAH 067
PRIYANSHU SHARMA PATHOK 039
DIGANTA SARMA 155
PRITOM BARMAN 008
DHARINDOM SONOWAL 129
SEUJ PALLAV KHATANIAR 084
SIMANTA JEET BORAH 010
-
8/4/2019 Solid Model Design
2/28
2
CONTENTS
Acknowledgement 3
Introduction 4
Overview 5
Solid Representation Schemes 6
Constructive Solid Geometry (CSG) 8
Application of CSG 13
Advantages & Disadvantages Of CSG 14
Boundary Representation (B-Rep) 15
Advantages & Disadvantages Of B-Rep 20
Spatial Enumeration 21
Parameterized Primitive Instancing 26
Cell Decomposition 26Sweeping 27
Implicit Representation 27
Parametric & Feature Based Modeling 28
Advantages & Disadvantages Of
Solid Model Design 29
-
8/4/2019 Solid Model Design
3/28
3
ACKNOWLEDGEMENT
We would like to express our profound gratitude
to Mukulesh Baruah, Principal, Girijananda
Chowdhury Institute of Management and
Technology, Guwahati, for permitting us to carry
out our project work.
We are grateful to Prof. P.C.Baruah, Head of the
Department, Mechanical Engineering, G.I.M.T.,
Guwahati, for his cheerful encouragement and
valuable suggestions.
We thank all the teachers of Mechanical
Engineering department, G.I.M.T., from the bottom
of our heart for their sincere guidance throughout
the project.
Last but not the least; we thank our friends for
their support who helped us doing this project.
-
8/4/2019 Solid Model Design
4/28
4
INTRODUCTION
Solid Modeling:
'Solid Modeling' is a method used to design parts by
combining various 'solid objects' into a single three-dimensional
(3D) part design. It is a combination of Geometric modeling and
computer graphics which together forms the foundation for
computer-aided design (CAD)and in general support the
creation, exchange, visualization, animation, interrogation, and
annotation of digital models of physical objects. Solid modeling
is distinguished from related areas of Geometric modeling and
Computer graphics by its emphasis on physical fidelity. As a
field, solid modeling spans several disciplines, including
mathematics, computer science, and engineering.
-
8/4/2019 Solid Model Design
5/28
5
OVERVIEW
The use of solid modeling techniques allows for the automation
of several difficult engineering calculations that are carried out
as a part of the design process. Simulation, planning, and
verification of processes such as machining and assembly were
one of the main catalysts for the development of solid
modeling. More recently, the range of supportedmanufacturing applications has been greatly expanded to
include sheet metal manufacturing, injection molding, welding,
pipe routing etc. Beyond traditional manufacturing, solid
modeling techniques serve as the foundation for rapid
prototyping, digital data archival and reverse engineering by
reconstructing solids from sampled points on physical objects,mechanical analysis using finite elements, motion planning and
NC path verification, kinematic and dynamic analysis of
mechanisms, and so on. A central problem in all these
applications is the ability to effectively represent and
manipulate three dimensional geometry in a fashion that is
consistent with the physical behavior of real artifacts. Solidmodeling research and development has effectively addressed
many of these issues, and continues to be a central focus of
computer aided engineering.
-
8/4/2019 Solid Model Design
6/28
6
SOLID REPRESENTATION SCHEMES
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. All representation schemes are organized in terms of
a finite number of operations on a set of primitives. Thereforethe modeling space of any particular representation is finite,
and any single representation scheme may not completely
suffice to represent all types of solids.
For example, solids defined via combinations of regularized
Boolean operations cannot necessarily be represented as the
sweep of a primitive moving according to a space trajectory,except in very simple cases. This forces modern geometric
modeling systems to maintain several representation schemes
of solids and also facilitate efficient conversion between
representation schemes.
-
8/4/2019 Solid Model Design
7/28
7
Below is a list of common techniques used to create or
represent solid models. Modern modeling software may use a
combination of these schemes to represent a solid:-
(1) Constructive Solid Geometry (CSG)(2) Boundary Representation (B-rep)(3) Spatial Enumeration(4) Instantiation or Parameterized Primitive
Instancing
(5) Cell Decomposition(6) Sweeping(7) Implicit Representation(8) Parametric & Feature Based Modeling
-
8/4/2019 Solid Model Design
8/28
8
CONSTRUCTIVE SOLID GEOMETRY (CSG)
Constructive Solid Geometry (CSG) denotes a family of schemes for
representing rigid solids as Boolean constructions or combinations ofprimitives via the regularized set operations discussed above. CSG is
currently the most important representation schemes for solids. CSG
representations take the form of ordered binary trees where non-
terminal nodes represent either rigid transformations (orientation
preserving isometrics) or regularized set operations. Terminal nodes are
primitive leaves that represent closed regular sets. The semantics of
CSG representations is clear. Each sub tree represents a set resultingfrom applying the indicated transformations/regularized set operations
on the set represented by the primitive leaves of the sub tree. CSG
representations are particularly useful for capturing design intent in the
form of features corresponding to material addition or removal (bosses,
holes, pockets etc). The attractive properties of CSG include
conciseness, guaranteed validity of solids, computationally convenient
Boolean algebraic properties, and natural control of a solid's shape in
terms of high level parameters defining the solid's primitives and their
positions and orientations. The relatively simple data structure and
elegant recursive algorithms have further contributed to the popularity
of CSG.
The simplest solid objects used for the representation are called
Primitives. Typically they are the objects of simple shape: cuboids,
cylinders, prisms, pyramids, spheres, cones. The set of allowable
-
8/4/2019 Solid Model Design
9/28
9
primitives is limited by each software package. Some software packages
allow CSG on curved objects while other packages do not.
BOOLEAN OPERATION
It is said that an object is constructed from primitives by means of
allowable operations, which are typically Boolean operations on sets:
Union, Intersection and Difference.
A primitive can typically be described by a procedure which accepts
some number of parameters; for example, a sphere may be described
by the coordinates of its center point, along with a radius value. These
primitives can be combined into compound objects using operationslike these:
UNION:-o The sum of all points in each of two defined sets. (logical
OR)
o Also referred to as Add, Combine,Join, Merge.
-
8/4/2019 Solid Model Design
10/28
10
DIFFERENCE :-o The points in a source set minus the points common to a
second set. (logical NOT)o Set must share common volumeo Also referred to as subtraction, remove, cut
-
8/4/2019 Solid Model Design
11/28
11
INTERSECTION :-o Those points common to each of two defined sets (logical
AND)
o Set must share common volumeo Also referred to as common, conjoin
When using Boolean operation, we should be careful to avoid situation
that do not result in a valid solid.
-
8/4/2019 Solid Model Design
12/28
12
DATA STRUCTURE
Data structure does not define model shape explicitly but ratherimplies the geometric shape through a procedural description
o E.g: object is not defined as a set of edges & faces but by theinstruction : union primitive1 with primitive 2
This procedural data is stored in a data structure referred to as aCSG tree
The data structure is simple and stores compact data easy tomanage
CSG TREE
CSG tree stores the history of applying Boolean operations onthe primitives.
It stores in a binary tree format. The outer leaf nodes of tree
represent the primitives. The interior nodes represent the Booleanoperations performed.More than one procedure (and hence database)can be used to arrive at the same geometry.
-
8/4/2019 Solid Model Design
13/28
13
APPLICATIONS OF CSG
Constructive solid geometry has a number of practical uses. It is used in
cases where simple geometric objects are desired, or where
mathematical accuracy is important.CSG is popular because a modeler
can use a set of relatively simple objects to create very complicated
geometry. When CSG is procedural or parametric, the user can revise
their complex geometry by changing the position of objects or by
changing the Boolean operation used to combine those objects.
One of the applications of CSG is that it can easily assure that objects
are "solid" or water-tight if all of the primitive shapes are water-tight.
This can be important for some manufacturing or engineering
computation applications. By comparison, when creating geometry
based upon boundary representations, additional topological data is
required, or consistency checks must be performed to assure that the
given boundary description specifies a valid solid object.
A convenient property of CSG shapes is that it is easy to classify
arbitrary points as being either inside or outside the shape created by
CSG. The point is simply classified against all the underlying primitivesand the resulting Boolean expression is evaluated. This is a desirable
quality for some applications such as collision detection.
-
8/4/2019 Solid Model Design
14/28
14
ADVANTAGES OF CSG
CSG is powerful with high level command. Easy to construct a solid model minimum step. CSG modeling techniques lead to a concise database less
storage.
Complete history of model is retained and can be altered atany point.
Can be converted to the corresponding boundary representation.DISAVANTAGES OF CSG
Only Boolean operations are allowed in the modeling processwith Boolean operation alone, the range of shapes to be modeled
is severely restricted not possible to construct unusual shape.
Requires a great deal of computation to derive the information onthe boundary, faces and edges which is important for theinteractive display/ manipulation of solid.
CSG representation is unevaluated --Faces, edges, vertices notdefined in explicit
-
8/4/2019 Solid Model Design
15/28
15
Boundary Representation (B-Rep)
Solid model is defined by their enclosing surfaces or boundaries.
This technique consists of the geometric information about thefaces, edges and vertices of an object with the topological data on
how these are connected. Since the boundaries of solids have the
distinguishing property that they separate space into regions
defined by the interior of the solid and the complementary
exterior .Every point in space can unambiguously be tested
against the solid by testing the point against the boundary of the
solid. Recalling that ability to test every point in the solid providesa guarantee of solidity. Using ray casting, it is possible to count
the number of intersections of a cast ray against the boundary of
the solid. Even number of intersections corresponds to exterior
points, and odd number of intersections corresponds to interior
points. The assumption of boundaries as manifold cell complexes
forces any boundary representation to obey disjointedness of
distinct primitives, i.e. there are no self intersections that cause
non-manifold points. In particular, the manifoldness condition
implies all pairs of vertices are disjoint, pairs of edges are either
disjoint or intersect at one vertex, and pairs of faces are disjoint or
intersect at a common edge. Several data structures that are
combinatorial maps have been developed to store boundary
representations of solids. Boundary representations have evolved
into a ubiquitous representation scheme of solids in most
commercial geometric modelers because of their flexibility in
representing solids exhibiting a high level of geometric
complexity.
-
8/4/2019 Solid Model Design
16/28
16
Why B-Rep includes such topological information?
- A solid is represented as a closed space in 3D space (surfaceconnect without gaps)
- The boundary of a solid separates points inside from pointsoutside solid.
B-Rep v/s Surface Modeling-
Surface model A collection of surface entities which simply enclose a
volume lacks the connective data to define a solid (i.e.
topology).
B- Rep model Technique guarantees that surfaces definitively divide model
space into solid and void, even after model modification
commands.
-
8/4/2019 Solid Model Design
17/28
17
B-Rep Data Structure
B-Rep graph store face, edge and vertices as nodes, with pointers, or
branches between the nodes to indicate connectivity.
Boundary representation- Validity
System must validate topology of created solid. B-Rep has to fulfill certain conditions to disallow self-intersecting
and open objects
This condition include- Each edge should adjoin exactly two faces and have a vertex
at each end.
- Vertices are geometrically described by point coordinates
-
8/4/2019 Solid Model Design
18/28
18
At least three edges must meet at each vertex. Faces are described by surface equations
The set of faces forms a complete skin of the solid with nomissing parts.
Each face is bordered by an ordered set of edges forming aclosed loop.
Faces must only intersect at common edges or vertices. The boundaries of faces do not intersect themselves
Validity also checked through mathematical evaluation Evaluation is based upon Eulers Law (valid for simple
polyhedra no hole)
(V E + F )= 2 ; where V=vertices; E=edges ;F=face loops
V = 5, E = 8, F = 5
5 8 + 5 = 2
-
8/4/2019 Solid Model Design
19/28
19
Expanded Eulers law for complex polyhedrons (with holes) Euler-Poincare Law:
(V-E+F-H)=2(B-P) Where H= number of holes in face; P=number of passages or
through holes; B=number of separate bodies; V=vertices;
E=edges ;F=face loops
V = 24, E=36, F=15, H=3, P=1,B=1
Boundary Representation- Ambiguity & Uniqueness
Valid B-Reps are unambiguous Not fully unique, but much more so than CSG Potential difference exists in division of
Surfaces into faces. Curves into edges
-
8/4/2019 Solid Model Design
20/28
20
ADVANTAGES OF B-REP
Capability to construct unusual shapes that would not be possiblewith the available CSG aircraft fuselages, swing shapes
Less computational time to reconstruct the image
DISADVANTAGES OF B-REP
Requires more storage More prone to validity failure than CSG Model display limited to planar faces and linear edges
- complex curve and surfaces only approximated
-
8/4/2019 Solid Model Design
21/28
21
SPATIAL ENUMERATION
This scheme is essentially a list of spatial cells occupied by the solid. The
cells, also called Voxels are cubes of a fixed size and are arranged in afixed spatial grid (other polyhedral arrangements are also possible but
cubes are the simplest). Each cell may be represented by the
coordinates of a single point, such as the cell's centroid. Usually a
specific scanning order is imposed and the corresponding ordered set
of coordinates is called a spatial array. Spatial arrays are unambiguous
and unique solid representations but are too verbose for use as
'master' or definitional representations. They can, however, representcoarse approximations of parts and can be used to improve the
performance of geometric algorithms, especially when used in
conjunction with other representations such as Constructive Solid
Geometry.
Spatial Enumeration Variation : Representation scheme that alleviates some of the storage
requirements of spatial enumeration.
Most common is the Octree representation
Fundamental idea is that of divide andconquer.
More easily understood by examiningthe 2D variant first (quadtrees)
QUADTREES
Quadtree is a tree data structure of storage used for 2dimensional cellular decomposition.
Quadtree is derived by successively sub-dividing a 2D plane in
quadrants
Each quadrant fully occupied, partially.
-
8/4/2019 Solid Model Design
22/28
22
Graphic representation of quadtree data structure similar to CSG
tree except:
not binary, but quartic (four branches at node)
nodes represent last level of decomposition
nodes indicate occupancy level
full
partial
empty
A partially occupied quadrant is recursively subdivided into
subquadrants.
This continues until either:
no partially occupied quadrants remain
a prescribed level of accuracy for the model has been reached.
Quadtrees are often used as an image representation format (screen
display)
a) 2D spatial enumeration of shape shown.
b) Quadtree representation of the same.
-
8/4/2019 Solid Model Design
23/28
23
OCTREES
Octrees represent the 3 dimensional extension of the quadtree
concept.
expand quadtree (2D) to 3D space Spatial volumes are sub-divided into a set of eight cells or octants.
Storage tree now has eight branches at each node.
Octree Representation
-
8/4/2019 Solid Model Design
24/28
24
Quadtree Storage Example
Spatial Enumeration : Domain and expressive power
Representation is approximate
Domain can be considered unlimited providing one excepts the
following conditions
that it is an approximation and,
high storage requirements exist
Spatial Enumeration : Validity
creates valid models if minimal connectivity required
each filled cell must have a neighbor
if connectivity required,validity check is straightforward
-
8/4/2019 Solid Model Design
25/28
25
PARAMETERIZED PRIMITIVE INSTANCING
This scheme is based on the notion of families of objects, each memberof a family distinguishable from the other by a few parameters. Each
object family is called a generic primitive, and individual objects within
a family are calledprimitive instances. For example a family of bolts is a
generic primitive, and a single bolt specified by a particular set of
parameters is a primitive instance. The distinguishing characteristic of
pure parameterized instancing schemes is the lack of means for
combining instances to create new structures which represent new and
more complex objects. The other main drawback of this scheme is thedifficulty of writing algorithms for computing properties of represented
solids. A considerable amount of family-specific information must be
built into the algorithms and therefore each generic primitive must be
treated as a special case, allowing no uniform overall treatment.
CELL DECOMPOSITION
This scheme follows from the combinatoric (algebraic topological)
descriptions of solids detailed above. A solid can be represented by its
decomposition into several cells. Spatial occupancy enumeration
schemes are a particular case of cell decompositions where all the cells
are cubical and lie in a regular grid. Cell decompositions provide
convenient ways for computing certain topological properties of solids
such as its connectedness (number of pieces) and genus (number of
holes). Cell decompositions in the form of triangulations are the
representations used in 3d finite elements for the numerical solution of
partial differential equations.
-
8/4/2019 Solid Model Design
26/28
26
SWEEPING
The basic notion embodied in sweeping schemes is simple. A set
moving through space may trace or sweep out volume ( a solid) thatmay be represented by the moving set and its trajectory. Such a
representation is important in the context of applications such as
detecting the material removed from a cutter as it moves along a
specified trajectory, computing dynamic interference of two solids
undergoing relative motion, motion planning, and even in computer
graphics applications such as tracing the motions of a brush moved
on a canvas. Most commercial CAD systems provide (limited)
functionality for constructing swept solids mostly in the form of atwo dimensional cross section moving on a space trajectory
transversal to the section. However, current research has shown
several approximations of three dimensional shapes moving across
one parameter, and even multi-parameter motions.
IMPLICIT REPRESENTATIONA very general method of defining a set of pointsXis to specify
a predicate that can be evaluated at any point in space. In
other words,Xis defined implicitlyto consist of all the points
that satisfy the condition specified by the predicate. The
simplest form of a predicate is the condition on the sign of a
real valued function resulting in the familiar representation of
sets by equalities and inequalities. For example iff= ax+ by+cz + dthe conditionsf(p) = 0 ,f(p) > 0, andf(p) < 0 represent
respectively a plane and two open linear half spaces. More
complex functional primitives may be defined by Boolean
combinations of simpler predicates. Furthermore, the theories
-
8/4/2019 Solid Model Design
27/28
27
of R-functions allow conversions of such representations into a
single function inequality for any closed semi analytic set. Such
a representation can be converted to a boundary
representation using polygonization algorithms, for example,
the marching cubes algorithm.
PARAMETRIC AND FEATURE BASED MODELINGFeatures are defined to be parametric shapes associated with attributes
such as intrinsic geometric parameters (length, width, depth etc),
position and orientation, geometric tolerances, material properties, andreferences to other features. Features also provide access to related
production processes and resource models. Thus, features have a
semantically higher level than primitive closed regular sets. Features
are generally expected to form a basis for linking CAD with downstream
manufacturing applications, and also for organizing databases for
design data reuse.
-
8/4/2019 Solid Model Design
28/28
28
ADVANTAGES OF SOLID MODEL DESIGN
(i) Better visualization of the design.(ii) CAD models can be brought into sophisticated analytical
programs.
(iii) Weights, CG's, and other geometric data can be had directly
from the CAD system, for more accuracy in less time.
(iv) Some design changes can be quicker and easier.
DISADVANTAGES OF SOLID MODEL DESIGN
(i) Some design changes can be slower and harder.
(ii) Requires a lot of computer knowledge.