Vous êtes sur la page 1sur 18

Introduction :

Solid modeling is the advanced version and knowledge of Wireframe modeling. It is the
combination of Wire frame modeling and geometric modeling which rectifies the
drawbacks of those two modeling.

A solid model is a digital representation of the geometry of an existing or envisioned


physical object. Solid models are used inmany industries, from entertainment to health
care. They play a major role in the discrete-part manufacturing industries, whereprecise
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. Designers may specify points, curves, and
surfaces, and stitch them together to define electronic representations of the boundary of
the object. Alternatively, they may select models of simple shapes, such as blocks or
cylinders, specify their dimensions, position, and orientation, and combine them using
union, intersection, or difference operators.

The resulting representation is an unambiguous, complete, and detailed digital


approximation of the geometry of an object or of an assembly of objects (such as a car
engine or an entire airplane).

Interactive three-dimensional (3D) graphic supports the design activities by providing


designers with:

Easy to understand images of their design,

Efficient facilities for graphically selecting or editing features of the part being designed,

Immediate feedback, which helps them perform and check each design step.

Early applications of solid modeling focused on producing correct engineering drawings


automatically and on cutter-path generation for numerically controlled machining.

Today, the engineering drawings still provide a link to traditional, non-electronic


manufacturing or archival processes, but are being rapidly replaced with electronic file
transfers. Solid modeling has evolved to provide the set of fundamental tools for
representing a large class of products and processes, and for performing on them the
geometric calculations required by applications.
1

The ultimate goal is to relieve engineers from all of the low-level or non-creative tasks in
designing products; in assessing their manufacturability, assemblability, and other lifecycle characteristics; and in generating all the information necessary to produce them.
Engineers should be able to focus on conceptual, high-level design decisions, while
domain-expert application programs should provide advice on the consequences of design
decisions and generate plans for the manufacture and other activities associated with the
products life cycle. Today, solid modeling is an inter disciplinary field that involves a
growing number of areas.

Its objectives evolved from a deep understanding of the practices and requirements of the
targeted application domains. Its formulation and rigor are based on mathematical
foundations derived from general and algebraic topology, and from Euclidean, differential,
and algebraic geometry. The computational aspects of solid modeling deal with efficient
data structures and algorithms, and benefit from recent developments in the field of
computational geometry whereas research in 3D graphics focuses on fast or photo-realistic
rendering of complex scenes, often composed of solid models, and on realistic or artistic
animations of non-rigid objects.

A similar symbiotic relation with computer vision is regaining popularity, as many


research efforts in vision are model-based and attempt to extract 3D models from images
or video sequences of existing parts or scenes. These efforts are particularly important for
solid modeling, because the cost of manually designing solid models of existing objects or
scenes far exceeds the other costs (hardware, software, maintenance, and training)
associated with solid modeling. Finally, the growing complexity of solid models and the
growing need for collaboration, reusability of design, and interoperability of software
require expertise in distributed databases, constraint management systems, optimization
techniques, object linking standards, and internet protocols.

This chapter would provide clarity about Solid models, Solid Entities, Regularized
Boolean operations and operators, Primitive Instancing.

SOLID MODELING

Ways to represent, generates, and manipulate solid objects. Necessary for many
applications where objects must be maintained as solids. e.g. finite element analysis,
2

computer aided design and machining (CAD/CAM), mass property determination,


refraction.

In many applications, however, it is important to distinguish between the inside, outside,


and surface of a 3D object and to be able to compute properties of the object that depend
on this distinction.

In CAD/CAM, for example, if a solid object can be modeled in a way that adequately
captures is manufactured. We may wish to determine whether two objects interfere with
each other; for example, whether a robot arm will bump into objects in its environment, or
whether a cutting tool will cut only the material it is intended to remove.

In simulating physical mechanisms, such as a gear train, it may be important to compute


properties such as volume and center of mass .Finite-element analysis is applied to solid
models to determine response to factors such as stress and temperature through finiteelement modeling.

A satisfactory representation for a solid object may even make it possible to generate
instructions automatically for computer-controlled machine tools to create that object. In
addition, some graphical techniques, such as modeling refractive transparency, depend on
being able to determine where a beam of light enters and exits a object.

These applications are all examples of solid modeling. The need to model objects as solids
has resulted in the development of a variety of specialized ways to represent them. This
chapter provides a brief introduction to these representations.

PROPERTIES OF SOLID MODELING:


1. Domain system can represent all objects desired and perform all operations
desired.
2. Closure operations on valid objects produce valid objects.
3. Unambiguous one representation defines one object.
4. Validity only valid objects are stored.
3

5. Creation easy to create new objects.


6. Accuracy representation and operations maintain the object close To exactly
7. Efficiency operations are quick and easy to perform.
8. Compactness representation does not use unnecessary space
9. Uniqueness an object can only be represented in one way.

Information complete, unambiguous, accurate solid model

COMPARING OBJECT OF WIRE FRAME MODEL AND


SOLID MODEL:
I.

A wireframe cube composed of 12 straight lines. (b) A wireframe cube with


an extra face.

II.

(a) Object Aand B, (b) AUB, (c) AB, (d) A-B, and using Boolean operations
for solid modeling.
4

MODELING OPERATION:
A. Local Operations
1. Only affect one (local) portion of the solid.
2. May need to ensure validity some local operations have global consequences.
3. Example operations
a. Beveling
b. Rounding
c. Filleting
d. Face extrusion

B. Global Operations
1. Affect the overall solid.
2. Example operations
a. Translation
b. Rotation
c. Scaling
d. Operation undo
e. Offset surface
f. Boolean Operation
5

VARIOUS METHOD OF SOLID MODELING:


Regularized Boolean Set operations
Sweep Representation
Octrees
Constructive Solid Geometry (CSG)
Boundary representation (B-rep)
Primitive Instancing
Fractal Dimension

BASIC CONCEPTS AND PARAMETERS TO BE KNOWN FOR


SOLID MODELING:
1. Eulers Law :
F - E +V - L = 2(B -G)
F: Number of faces
E: Number of edges
V: Number of vertices
L: Number of faces inner loops
B: Number of bodies
G: Genus = Number of handles or through holes
To create, manipulate, and edit primitives

To ensure validity, i.e. closeness, no dangling faces and edges

Example:

Polyhedral Objects

For polyhedra, L=G=0, and B=1, thus the Euler's law is simplified to F - E +V =
2
F=5, E= 8, V= 5, B=1, L=0, G=0

Euler Operator
MBFV: Make body, face, vertex
MME: Make multiple edges
MEF: Make edge, face
KEML: Kill edge, make loop
KFMLG: Kill face, make

F - E +V - L = 2(B -G)

2. HALF SPACES :
Unbounded geometric entities.
Each one of them divides the representation space into infinite portions, one
filled with material and the other empty.
Surfaces can be considered half-space boundaries and half spaces can be
considered directed surfaces.
An object is defined by the volume space contained within the defined
boundary of the object.
By specifying different boundary surface, we can have any half-spaces;
The most commonly used half-spaces are planar, cylindrical, spherical,
conical, and toroidal.

By combining half-spaces (using Boolean operations) in a building block


fashion, various solids can be constructed
Planar half-space H = {(x, y, z) : z < 0}
Cylindrical half-space H = {(x, y, z) : x2 + y2 < R2}

Block: {(x, y, z) : 0 < x < w, 0 < y < H, and 0 < z < D}


Cylinder: {(x, y, z) : x2 + y2 < R2 , and 0 < z < H}

HALF SPACE REPRESENTATION

3. Geometry Vs Topology

Geometry:
Metrics and dimensions of the solid object. Location of the object in a
chosen coordinate system

Topology:
Combinatorial information like connectivity, associativity and neighborhood
information. Invisible relationship information.

4. Manifold Vs Non-manifold

Two Manifold Representations:


Two manifold objects are well bound, closed and homomorphic to a
topological ball.

Non-manifold Representations:
When restrictions of closure and completeness are removed from the
solid definition, wireframe entities can coexist with volume based
solids.

10

REGULARIZED BOOLEAN SET OPERATION:


No matter how we represent objects, we would like to be able to combine
them in order to make new ones. One of the most intuitive and popular methods for
combining objects is by Boolean set operations, such as union, difference, and
intersection, as shown in Fig. There are the 3D equivalents of the familiar 2D
Boolean operations. Applying an ordinary Boolean set operation to two solid objects,
however, does not necessarily yield a solid object. For example, the ordinary
Boolean intersections of the cubes in Fig. (a) through (e) are a solid, a plane, a line, a
point, and the null object, respectively.

The ordinary Boolean intersection of two cubes may produce (a) a solid, (b) a plane,
(c)a line (d) a point, or (e) the null set.

Rather than using the ordinary Boolean set operators, we will instead use the
regularized Boolean set operators, denoted *, *, and *, and defined such that
operations on solids always yield solids. For example, the regularized Boolean
intersection of the objects shown in Fig. 7.3 is the same as their ordinary Boolean
intersection in cases (a) and (e), but is empty in (b) through (d).
To explore the difference between ordinary and regularized operators, we can
consider any object to be defined by a set of points, partitioned into interior points
and boundary points, as shown in Fig. Boundary points are those points whose
distance from the object and the object's complement is zero. Boundary points need
11

not be part of the object. A closed set contains all its boundary points, whereas an
open set contains none. The union of a set with the set of its boundary points is
known as the set's closure, as shown in Fig. 7.4(b), which is itself a closed set. The
boundary of a closed set is the set of its boundary points, whereas the interior,
shown in Fig. 7.4(c), consists of all of the sets other points, and thus is the
complement of the boundary with respect to the object. The regularization of a set
is defined as the closure of the sets interior points. Figure 7.4(d) shows the closure
of the object in Fig 7.4(c) and, therefore, the regularization of the object in Fig.
7.4(a). A set that is equal to its own regularization is known as a regular set. Note
that a regular set can contain no boundary point that is not adjacent to some interior
point; thus, it can have no dangling boundary points, lines, or surfaces. We can
define each regularized Boolean set operator in terms of the corresponding ordinary
Boolean set operator as
A op * B = closure (interior (A op B)).
Where op is one of U ,, or -. The regularized Boolean set operators
produce only regular sets when applied to regular sets

Boolean intersection. (a) Two objects, shown in cross-section. (b)positions


of object prior to intersection.(c) Ordinary Boolean intersection results in a dangling
fact, shown as line CD in cross-section.(d) Regularized Boolean intersection includes
a piece of shared boundary in the resulting boundary if both objects lie on the same
side of it. (AB), and excludes it if the object.
12

Consider what happens when the interiors of the objects lie on opposite sides of
the shared boundary, as is the case with segment CD. In such cases, none of the
interior points adjacent to the boundary are included in the intersection. Thus, the
piece of shared boundary is not adjacent to any interior points of the resulting
object and therefore is not included in the regularized intersection. This additional
restriction on which pieces of shared boundary are included ensures that the
resulting object is a regular set. The surface normal of each face of the resulting
objects boundary is the surface normal of whichever surface(s) contributed that
part of the boundary. Having determined which faces lie in the boundary, we
include an edge or vertex of the boundary-boundary intersection in the boundary of
the intersection if it is adjacent to one of these faces.

13

The results of each regularized operator may be defined in terms of the


ordinary operators applied to the boundaries and interiors of the objects. Table 7.1
shows how the regularized operators are defined for any objects A and B; Fig.7.6
shows the results of performing the operations. Ab and Ai are As boundary and
interior, respectively same side. This is the case for some point b on the shared
boundary if at least one point adjacent to it is a member of both Ai opposite sides.
This is true for b if it is adjacent to no such point i. Each regularized operator is
defined by the union of the sets associated with those rows that have a in the
operators column.
Note that, in all cases, each piece of the resulting objects. Boundary is on the
boundary of one or both of the original objects. When computing A*B or A*B,
the surface normal of a face of the result is inherited from the surface normal of the
corresponding face normal of a face of the result is inherited from the surface
normal of the corresponding face of one or both original objects. The regularized
Boolean set operators have been used as a user-interface technique to build
complex objects from simple ones in most of the representation schemes we shall
discuss. They are also included explicitly in one of the schemes, constructive solid
geometry .In the following sections, we shall describe a variety of ways to
represent solid objects unambiguously.
14

Operations to construct a complex model through geometric

primitives
Union
Intersection
Difference

15

EXAMPLE:

OPERATION USING BOOLEAN OPERATORS

Primitive Instancing:
In primitive instancing, the modeling system defines a set of primitives are
typically parameterized not just in terms of the transformations, but on other properties as
well. For example, one primitive object may be a regular pyramid with a user-defined
number of faces meeting at the apex. Primitive instances are similar to parameterized
objects, except that the objects are solids. A parameterized primitive may be thought of as
defining a family of parts whose members vary in a few parameters ,an important CAD
concept know as group technology. Primitive instancing is often used for relatively
combinations of simpler objects, yet are readily characterized by a few high-level
16

parameters. For example, a gear may be parameterized by its diameter or number of


teeth, as shown in Fig.

17

TWO GEARS DEFINED BY PRIMITIVE INSTANCING


Although we can build up a hierarchy of primitive instances, each leaf-node
instance is still a separately defined object. In primitive instancing, no provisions are
made for combining objects to form a new higher-level object, using, for example, the
regularized Boolean set operations. Thus, the only way to create a new kind of object is
to write the code that defines it. Similarly, the routines that draw the objects or
determine their mass properties must be written individually for each primitive.
The limits of primitive instancing is
A certain (limited) set of predefined primitives is allowed.
Each primitive may be governed by parameters.
Set of operations is minimal (e.g. just translation, scale, rotation).
Useful when domain is limited e.g. furniture placement in home
design

It is nothing but enlarging the object through dimensions and other


parameters.

18

Vous aimerez peut-être aussi