You are on page 1of 6

Basic Concepts

Solid modeling and Surface modeling


There are two different styles of CAD software: solid modeling and surface modeling.
The solid modeling style is characterized by 2D sketches, extrusions, revolutions, and lofts of those
2D sketches to form solids, blends on the edges of solids, and Boolean operations between solids.
The surface modeling style is characterized by control points used to define 3D curves by a variety of
methods and these curves are then used to define surfaces by a variety of methods. MultiSurf extends
this style by making each point, curve, and surface an entity that knows how it was made. This
allows the designer to express design intent by building relationships between geometric entities.
Any entity properties set when an entity is created can be edited at any time.
MultiSurf has the capability to create a wide variety of complex, freeform curves and surfaces, while
at the same time maintaining relational editability and bi-directional associativity. MultiSurf
encourages the designer to create and maintain rich relationships between entities that express and
capture design intent.

Entity Dependencies
Any engineer knows that design is rarely a linear process: starting from a set of objectives,
proceeding through a series of predefined steps, and arriving at a final design. Engineering would
not be a very interesting vocation if it were. In most cases design is actually a very complex iterative
process: pushing through several design stages, evaluating the resulting design against the objectives,
backtracking through some or all design stages, taking new paths, perhaps even going back to the
beginning and redefining the objectives. Particularly in the design of 3D entities with subjective
aesthetic requirements, many cycles of visual evaluation and refinement are typical. The problem is
that each time you backtrack, you have to do all the design steps from that point forward all over
again.
In MultiSurf you can establish relationships between entities that make this process easier. MultiSurf
supports numerous kinds of relationships, such as (but not limited to):
linear distance
arc-length distance
coincident with (or constrained to) a curve
coincident with (or constrained to) a surface
mirrored location
projected location
arc tangency
G1 and G2 surface continuity
The relationships are stored in the model file, so that if one or more of the underlying entities is
changed, the dependent entity (and all of its dependents, and all of their dependents, etc.)
automatically change and update to preserve the relationships.

January 10, 2006 MultiSurf User's Guide • 3-1


Basic Concepts Entity Dependencies

Built-in Relationships
In MultiSurf, relationships are built into the entity definitions. For example, by creating a bead entity,
you automatically have a point that is coincident with its parent curve. This makes for a larger
number of entity types to choose from, but each type of entity has a descriptive name that is easy to
learn. To continue with beads, there are several types of bead entities, including the Bead entity just
introduced (which is a bead located by t-parameter), the Arc-length Bead (a bead located by arc-
length), and the XYZ Bead (a bead located by an X, Y, or Z value). For details about these entities, see
their respective entries in the “Entity Descriptions” chapter.
MultiSurf also has automatic relations. Another way to create a Bead entity is to preselect a curve and
click a “quick point” ⎯ a bead will be automatically created on that curve. For details, see “Creating
Entities - Quick Points”.

Dependency and Exact Junctions


Dependency is often the key to achieving and maintaining exact junctions between curves and
surfaces. For example, suppose ‘side’ and ‘top’ are two surfaces, each depending for one of its edges
on the curve ‘seam’. If ‘seam’ is altered, both ‘side’ and ‘top’ will change in their absolute shapes, but
they will continue to meet precisely and seamlessly on those edges. Or take a somewhat similar, but
subtly different approach to the same junction. Suppose ‘side’ is defined first, and ‘seam’ is defined as
a snake on ‘side’ — possibly lying along one edge of ‘side’. Now ‘top’ can be defined as a surface that
uses ‘seam’ as one of its edges. Subsequently, you can freely modify ‘side’ and be assured that the
‘top’ will always continue to meet the ‘side’ precisely. We refer to these joins as “durable” because
they are maintained through subsequent changes to the underlying geometry.
These two side-top examples achieve the same goal, but the dependencies are quite different. In the
first, both ‘side’ and ‘top’ depend directly on ‘seam’:
‘seam’
‘side’
‘top’
In the second, ‘seam’ depends directly on ‘side’, and ‘top’ depends directly on ‘seam’:
‘side’
‘seam’
‘top’
Dependency can extend to many levels. For example:
'pt1’ (a point)
‘meridian’ (a control curve with ‘pt1’ as one of its control points
‘fuselage’ (a surface defined in part by ‘meridian’)
‘outline’ (a snake on ‘fuselage’)
‘canopy’ (a surface in part defined by ‘outline’)
‘window_frame’ (a snake on ‘canopy’)
‘rivet’ (a ring on ‘window_frame’)

3-2 • MultiSurf User's Guide January 10, 2006


Basic Concepts Beads, Magnets, and Rings

Beads, Magnets, and Rings


Beads are points coincident with (or constrained to lie on) a curve. You might think of the curve as a
thin, rigid wire; the bead is threaded onto it and can slide along. However, the bead doesn’t slide
around on its own — the bead is rubber and the hole is slightly undersize, so the bead has enough
friction to stay where you put it. Beads are used to mark locations along curves and, in some cases, to
identify a particular curve.
Magnets are points coincident with (or constrained to lie on) a surface. You might think of the surface
as being formed out of sheet metal and the magnets as being the little decorative magnets you use to
pin notes up on your refrigerator. You can move a magnet freely over the surface, but it stays where
you put it. Magnets are used to form snakes and to mark a particular location on a surface, such as
the position of a hole or a fastener.
Rings are points coincident with (or constrained to lie on) a snake. You might think of the snake as
having ring markings from one end to the other — you can count the rings to specify locations along
the length of the snake. Since a snake is constrained to lie on a surface, a ring on a snake is too, so a
ring can serve the same functions as a magnet. Otherwise, rings are very much like beads. Rings are
used primarily to mark locations along snakes and sometimes, like magnets, to define other snakes.

Parametric Curves
All of the curves you can form in MultiSurf are defined by reference to a “parameter” t, which takes
the value 0 at one end of the curve (the “start”) and 1 at the other end (the “end”). The rule that
defines the curve from its data points is written, mathematically or in computer code, in terms of the
variation of t. You can think of each point of a curve as being labeled by a specific value of t (Fig. 1).
In many situations t is roughly the arc length from the start of the curve to a given point, divided by
the total arc length between the curve ends.
Z

t=.2 t=.5

t=0
t=.8

t=1

Y
X Fig. 1. A curve marked at t = .1 intervals.

It is quite accurate and appropriate to think of the generation of a parametric curve as being a
continuous mapping or correspondence between the real numbers from 0 to 1 and points in 3-
dimensional space (Fig. 2). You can also think of the curve as being the path of a moving point and t
as being time.

t
0 .5 1
Fig. 2. A representation of the t parameter space corresponding to Fig. 1.

January 10, 2006 MultiSurf User's Guide • 3-3


Basic Concepts Parametric Surfaces

Actually, all the curve types used in MultiSurf exist beyond their nominal endpoints of t = 0 and 1.
For example, you can put a bead on a curve at t = -0.1 or at t = 1.2. These beads would be points off
the ends of the curve, on a logical, smooth extension of the curve itself.

Parametric Surfaces
All of the surfaces you can form with MultiSurf (except for Trimmed Surfaces) are defined with
reference to a pair of parameters, u and v, each of which has a nominal range of 0 to 1. The rule that
defines the surface in terms of its basis curves and/or points is written in terms of these two
parameters. You can think of every point of a surface as being labeled with a particular pair of values
for u and v. Generation of the surface is a continuous mapping from points in the unit square to
points in 3D space. We refer to the unit square as the “u-v parameter space” of the surface. It is a 2D
space, each of whose points corresponds to a point on the surface.
Z

1,0 v=1
edge
ge

v
u=0 ed

1,1

u=1 edge
v=0 edge 0,1
u X Y
0,0
2-D parameter space
3-D surface

Fig. 3. A parametric surface (right) and its u-v parameter space (left).

At any point on a parametric surface there is a direction (called the “u-direction”) in which u
increases while v is constant, and similarly there is a direction (called the “v-direction”) in which v
increases while u is constant. The only times you usually need to be conscious of the u- and v-
directions are:
• when placing magnets on the surface; these are located by their u and v parameter values
• when deciding how finely the surface should be subdivided in both directions for tabulation and
display
The four edges of a parametric surface can be identified as u = 0, u = 1, v = 0, and v = 1. The four
corners have (u,v) values of (0., 0.), (0., 1.), (1., 0.), and (1., 1.).
The positive normal direction of any surface (represented by a large arrow when entity orientation is
displayed) is determined by using a form of the right hand rule with the u- and v-directions. With
the fingers of your right hand pointing along the positive u direction and your palm facing in the
positive v direction and your thumb pointing perpendicular to u and v, your thumb points in the
direction of positive normal. If you select Reverse Orientation in the Advanced tab of any surface,
the positive normal direction is reversed.
Just as curves exist beyond their nominal endpoints, most MultiSurf surfaces extend smoothly
outside their nominal parameter range of 0 to 1. A magnet placed at u = -0.1, v = 0.45 would be a
point in space lying on the fair extension of the surface outside its nominal boundaries, near the
middle of the u = 0 edge.

3-4 • MultiSurf User's Guide January 10, 2006


Basic Concepts Parametric Snakes

Parametric Snakes
Parametric snakes work in a way so similar to parametric curves that it is hardly worth talking about
the differences. There is almost a one-to-one correspondence between curve and snake entities; that
is, there are Line Snakes, B-spline Snakes, C-Spline Snakes, SubSnakes, and Projected Snakes that all
work in a way very similar to the similarly named curves. The biggest difference is that any kind of
snake always is constrained to lie precisely in the surface that it belongs to. Another difference is that
a snake will use magnets or rings in its definition — the two kinds of point entities that always lie in
the surface — where a curve can use any point entity. A third difference is that a snake generally only
has its defined curve shape (Line, Arc, B-spline, etc.) in the u-v parameter space — once it is laid
down on the surface, it most likely will not be a straight line, a circular arc, or a B-Spline curve in 3D
space.

magnets

t v
0 1 u u
0,0
B-spline snake
on 2-D parameter space B-spline snake
on 3-D surface

Fig. 4. A parametric snake lies in its basis surface.

Just like curves, snakes have a lengthwise parameter named t, which runs from 0. to 1.
When defining snakes we often work in the u-v parameter space of the surface — thinking about
where magnets need to be located in terms of their u and v coordinates and sometimes thinking
about the snake as a curve in the u-v parameter space that gets mapped point by point onto the
surface.
A snake is always a valid substitute for a curve wherever a curve is used.

The Coordinate System


MultiSurf uses a single global Cartesian coordinate system, with coordinates X, Y, Z. A model can be
placed anywhere in the coordinate system. Modeling is done directly in this 3D space (there are no
2D sketches).

January 10, 2006 MultiSurf User's Guide • 3-5


Basic Concepts The Coordinate System

3-6 • MultiSurf User's Guide January 10, 2006

You might also like