Está en la página 1de 24

Freeform surface modelling usings NURBS

Technical Seminar Report

(2009-2010)

A technical seminar report submitted in partial fulfillment of the requirement for


the award of the degree of

BACHELOR OF ENGINEERING

IN

MECHANICAL ENGINEERING

VISVESWARAIAH TECHNOLOGICAL UNIVERSITY

BELGAUM, KARNATAKA, INDIA

Report Submitted By:

MANISH O.

(1BI06ME054)

BANGALORE INSTITUTE OF TECHNOLOGY


K.R ROAD, V.V PURAM, BANGALORE – 560004

Bangalore Institute of Technology, Mech. Dept. Page 1


DEPARTMENT OF MECHANICAL ENGINEERING

CERTIFICATE

It is certified that the paper entitled “Freeform surface modelling using NURBS” was
presented by K.A Somaiah, in partial fulfillment of the requirement for the award of the degree
in Bachelor of Engineering in Mechanical Engineering of Visvesvaraya Technological University,
Belgaum, Karnataka, India during the year 2009-2010. It is certified that all
corrections/suggestions indicated in the internal assessment have been incorporated in the
report deposited in the Department Library. The Technical Seminar Report has been approved as
it satisfies the academic requirements in respect of the technical seminar prescribed for the
Bachelor of Engineering Degree.

Signature of the examiners: Signature of the H.O.D.:

1.

Mr. N. Satish Dr. M. Venkatarama Reddy


Lecturer, Mechanical Department, BIT HOD, Mechanical Department, BIT

2.

Name of candidate:
50
Manish O.

(1BI06ME054)

Bangalore Institute of Technology, Mech. Dept. Page 2


Seminar Objectives

• To understand what Freeform surface modelling is.

• To understand how complex surfaces are modelled with the use of NURBS(Non-
uniform Rational B-Spline) inside a CAD software.

• To appreciate the myriad applications of Surface Modelling.

Benefits of this technology

• Reduction of time involved in virtual prototyping.

• More accurate rendering of the object in question.

• Enables the designers and engineers to express their thought more freely.

Computer Aided Designing(CAD) Revisited


• Computer-aided design (CAD) is the use of computer technology for the design of
objects, real or virtual. CAD may be used to design curves and figures in two-
dimensional ("2D") space; or curves, surfaces, and solids in three-dimensional
("3D") objects.
• Typical modern parametric feature based modeler and freeform surface systems
are built around a number of key C (programming language) modules with their
own APIs.
• A CAD system can be seen as built up from the interaction of a graphical user
interface (GUI) with NURBS geometry and/or boundary representation (B-rep)
data via a geometric modeling kernel.

Bangalore Institute of Technology, Mech. Dept. Page 3


Salient features of CAD
• Computer-Aided Design is one of the many tools used by engineers and designers
and is used in many ways depending on the profession of the user and the type
of software in question.
• 3D wireframe is basically an extension of 2D drafting. Each line has to be manually
inserted into the drawing.
• 3D parametric solid modeling require the operator to use what is referred to as
"design intent". The objects and features created are adjustable. Any future
modifications will be simple, difficult, or nearly impossible, depending on how the
original part was created.

Freeform Surface Modelling


Computer-Aided Design is one of the many tools used by engineers and designers and
is used in many ways depending on the profession of the user and the type of software
in question.3D wireframe is basically an extension of 2D drafting. Each line has to be
manually inserted into the drawing.

3D parametric solid modeling require the operator to use what is referred to as "design
intent". The objects and features created are adjustable. Any future modifications will be
simple, difficult, or nearly impossible, depending on how the original part was created.

Two main fields

1. Either creating aesthetic (Class A) surfaces that also


perform a function; for example, car bodies and
consumer product outer forms,

AND

2. Technical surfaces for components such as gas


turbine blades and other fluid dynamic engineering
components.

Bangalore Institute of Technology, Mech. Dept. Page 4


Two basic methods for the creation of surfaces

1>> The first begins with construction curves


(splines) from which the 3D surface is then swept
(section along guide rail) or meshed (lofted)
through.
2>> The second method is direct creation of the
surface with manipulation of the surface
poles/control points.

From these initially created surfaces, other surfaces


are constructed using either derived methods such
as offset or angled extensions from surfaces; or via
bridging and blending between groups of surfaces.

What are freeform surfaces?

Freeform surface, or freeform surfacing, is used in CAD and other computer graphics
software to describe the skin of a 3D geometric element. Freeform surfaces do not
have rigid radial dimensions, unlike regular surfaces such as planes, cylinders and
conic surfaces. They are used to describe forms such as turbine blades, car bodies and
boat hulls. Initially developed for the automotive and aerospace industries, freeform
surfacing is now widely used in all engineering design disciplines from consumer goods
products to ships. Most systems today use non-uniform rational B-spline (NURBS)
mathematics to describe the surface forms; however, there are other methods such as
Gorden surfaces or Coons surfaces .

The forms of freeform surfaces (and curves) are not stored or defined in CAD software
in terms of polynomial equations, but by their poles, degree, and number of patches
(segments with spline curves). The degree of a surface determines its mathematical
properties, and can be seen as representing the shape by a polynomial with variables to
the power of the degree value.

For example, a surface with a degree of 1 would be a flat cross section surface. A
surface with degree 2 would be curved in one direction, while a degree 3 surface could
(but does not necessarily) change once from concave to convex curvature.

Some CAD systems use the term order instead of degree. The order of a polynomial is
one greater than the degree, and gives the number of coefficients rather than the
greatest exponent. The poles (or control points) of a surface define its shape.

Bangalore Institute of Technology, Mech. Dept. Page 5


The natural surface edges are defined by the positions of the first and last poles. The
intermediate poles act like magnets drawing the surface in their direction. The surface
does not, however, go through these points.The second and third poles as well as
defining shape, respectively determine the start and tangent angles and the curvature.

In a single patch surface (Bézier surface), there is one more pole than the degree
values of the surface. Surface patches can be merged into a single NURBS surface; at
these points are knot lines. The number of knots will determine the influence of the
poles on either side and how smooth the transition is. The smoothness between
patches, known as parametric continuity, is often referred to in terms of a C value:
• C0: just touching, could have a nick(small cut)
• C1: tangent, but could have sudden change in curvature
• C2: the patches are curvature continuous to one another

Two more important aspects are the U and V parameters. These are values on the
surface ranging from 0 to 1, used in the mathematical definition of the surface and for
defining paths on the surface. In CAD systems, surfaces are often displayed with their
poles of constant U or constant V values connected together by lines; these are known
as control polygons.

Modelling

When defining a form, an important factor is the continuity between surfaces - how
smoothly they connect to one another.

One example of where surfacing excels is automotive body panels. Just blending two
curved areas of the panel with different radii of curvature together, maintaining
tangential continuity (meaning that the blended surface doesn't change direction
suddenly, but smoothly) won't be enough. To achieve a high quality NURBS or Bezier
surface, degrees of 5 or greater are generally used. Depending on the product and

Bangalore Institute of Technology, Mech. Dept. Page 6


production process, different levels of accuracy are used but tolerances usually range
from 0.02 mm to .001 mm).

Curves in CAD and Computer Graphics


Curves used in Freeform Surface Modelling can be represented by the following types
• Bézier curves
• Hermite Curves
• Uniform Non-rational B-Splines
• Non-uniform, Non-rational B-Splines
• Non-Uniform Rational B-Splines (NURBS)

NURBS and Bézier curves are ones of the most commonly used curves and the focus
of this presentation.

Bézier curves
Before explaining NURBS, we will stop by Bézier curve, because NURBS is a
generalization of Bézier curve.

The following figure shows a simple Bézier curve (C), its control points (1), (2), (3), (4),
and its control polygon (P). The control points are also called control handles.Each point
on a Bézier curve (and on many other kinds of curves) is computed as a weighted sum
of all control points. This means that each point is influenced by every control point. The
first control point has maximum impact on the beginning of the curve, the second one
reaches its maximum in the first half of the curve, etc.

Each control point influences the final curve according to assigned blending function. A
blending function defines the weight of the control point at each point of the curve. A
value of 0 indicates that the control point is not affecting a point on the curve. If the
blending function reaches 1, the curve is (usually) intersecting the control point.

Bangalore Institute of Technology, Mech. Dept. Page 7


Properties of blending functions define properties of a curve. Bézier curves use
polynomial functions of given degree.
The resulting curves have these properties:
• The curve starts in the first control point, ends in the last control point, but
in general case does not cross the inner control points.
• The tangent of the curve in its ending points is controlled by the inner
control points.
• The curve is always inside the convex hull of the control polygon.

Curve Degree

The previous example showed a cubic (degree 3) curve, which is one of the most often
used types. The degree refers to the highest exponent in the polynomial blending
functions used for Bézier curves. A Bézier curve may be of arbitrary degree. A degree 1
curve is a simple line and has two control points. A degree 2 curve is an arc and has
three control points. The higher the degree, the more control points and the more
complex shape is possible. But it is also more much harder to use, because each
control point still influences the whole curve.

Rational Curves

Each control point in rational curve is assigned a weight. The weight defines how much
does a point "attract" the curve. Only the relative weights of the control points are
important, not their absolute values. A curve with all weights set to 1 will have the same
shape as if all weights are set to 100. The shape only changes if weights of control
points are different.

Ordinary Bézier curve is a special case or rational Bézier curve, where all weights are

Bangalore Institute of Technology, Mech. Dept. Page 8


equal. Rational curve gives designers additional options at the cost of a more
complicated algorithm and additional data to keep track of.The rational Bézier curve
adds adjustable weights to provide closer approximations to arbitrary shapes. The
numerator is a weighted Bernstein-form Bézier curve and the denominator is a
weighted sum of Bernstein polynomials. Rational Bézier curves can, among other uses,
be used to represent segments of conic sections exactly.Given n + 1 control points Pi,
the rational Bézier curve can be described by:

B-spline
A B-Spline or or basis spline consists of multiple Bézier arcs and provides an unified
mechanism how to define continuity in the joins.

Blue

Red

Green Yellow

Consider two cubic Bézier curves - that is 8 total control points (4 per curve).Lets make
the last point of the first (green) curve equal to the first point of the second (violet) curve
- this saves us 1 point leaving us with 7 total control points. We have replaced one
control point with an external condition. The third (blue) curve and the fourth (yellow)
curve share ending points just like in previous case, but and also share the same
tangent direction at the junction point. There are two external conditions and only 6
control points are necessary to describe the curves.

Knot Vector
• The knots are a list of degree+N-1 numbers, where N is the number of control
points. Sometimes this list of numbers is called the knot vector. In this term, the
word vector does not mean 3-D direction.
• B-Splines use external conditions to put multiple pieces together while keeping the
original concept of control points.
• The neighbour curves share some control points. External conditions are either
implicit (uniform curves) or explicitly given by a knot vector.
• Knot vector defines how much information should be shared by neighbour curves

Bangalore Institute of Technology, Mech. Dept. Page 9


(segments).

Knot Multiplicity
• The number of times a knot value is duplicated is called the knot’s multiplicity.
• Knot vector is a sequence of numbers, usually from 0 to 1, for example (0, 0.5, 0.5,
0.7, 1), and it holds the information about external conditions mentioned earlier.
Number of intervals defines number of segments (3 in our case: 0-0.5, 0.5-0.7,
0.7-1).
• Multiplicity of knot 0.7 is 1, while multiplicity of knot 0.5 is 2. The higher the
multiplicity, the less information share the neighbour segments. When multiplicity
is equal to the degree of used curves, there is a sharp edge (green and violet
curves on the image).

NURBS
NURBS stands for Non-Uniform Rational B-Spline. It means NURBS uses rational
Bézier curves and an non-uniform explicitly given knot vector. Therefore, degree,
control points, weights, and knot vector is needed to specify a NURBS curve.

It is a mathematical model commonly used in computer graphics and CAD for


generating and representing curves and surfaces which offers great flexibility and
precision for handling both analytic and freeform shapes.Three-dimensional NURBS
surfaces can have complex, organic shapes. Control points influence the directions the
surface takes. The pioneers of this development were Pierre Bézier who worked as an
engineer at Renault, and Paul de Casteljau who worked at Citroën, both in France in the
1950’s.

Bangalore Institute of Technology, Mech. Dept. Page 10


General form of NURBS curve
Using the definitions of the basis functions Ni,n, a NURBS curve takes the following form

In this, k is the number of control points and wi are the corresponding weights. The
denominator is a normalizing factor that evaluates to one if all weights are one. This can
be seen from the partition of unity property of the basis functions. It is customary to write
this as

in which the functions

are known as the rational basis functions.

Geometric Continuity

A surface under construction, e.g. the hull of a motor yacht, is usually composed of
several NURBS surfaces known as patches. These patches should be fitted together in
such a way that the boundaries are invisible. This is mathematically expressed by the
concept of geometric continuity.

Bangalore Institute of Technology, Mech. Dept. Page 11


Higher-level tools exist which benefit from the ability of NURBS to create and establish
geometric continuity of different levels:
• Positional continuity (G0) holds whenever the end positions of two curves or
surfaces are coincidental. The curves or surfaces may still meet at an angle,
giving rise to a sharp corner or edge and causing broken highlights.

• Tangential continuity (G1) requires the end vectors of the curves or surfaces to
be parallel, ruling out sharp edges. Because highlights falling on a tangentially
continuous edge are always continuous and thus look natural, this level of
continuity can often be sufficient.

• Curvature continuity (G2) further requires the end vectors to be of the same
length and rate of length change. Highlights falling on a curvature-continuous
edge do not display any change, causing the two surfaces to appear as one. This
can be visually recognized as “perfectly smooth”. This level of continuity is very
useful in the creation of models that require many bi-cubic patches composing
one continuous surface

Operations on NURBS

When working with NURBS in their pure form, there is one very useful operation:
inserting new knot. A knot can be inserted into a NURBS curve without changing the
shape of the curve. The desired side effect of this operation is an additional control point
that provides finer control of the related region of the NURBS curve or surface.

There are other operations with NURBS, like


• elevating degree,
• removing knots, or
• computing control point positions from points laying on a curve,
but they do not reach the usefulness of knot insertion.

Salient Features of NURBS

• They allow representation of geometrical shapes in a compact form.


• They can be efficiently handled by the computer programs and yet allow for easy
human interaction.
• NURBS surfaces are functions of two parameters mapping to a surface in three-
dimensional space.
• The shape of the surface is determined by control points.
• The principles can be applied to higher-dimensional objects like surfaces or
volumes. Surfaces are used when creating 3D objects, for example landscape;
while volumes can be used to define a non-linear transformation.

Bangalore Institute of Technology, Mech. Dept. Page 12


• NURBS are nearly ubiquitous for computer-aided design (CAD), manufacturing
(CAM), and engineering (CAE) and are part of numerous industry wide used
standards, such as IGES, STEP, ACIS, and PHIGS.

Surface Modelling tools in use today


NURBS tools are also found in various 3D modeling and animation software packages,
such as
• Catia
• Cobalt (Ashlar-Vellum)
• Form•Z
• ICEM Surf
• Imageware
• NX (Unigraphics)
• ProEngineer
• Rhinoceros 3D
• SensAble Technologies
• Solidworks
• Alias StudioTools
• FreeSHIP
• GenesisIOD
• OmniCAD
• ProEngineer ISDX
• Thinkdesign

Other than this there are specialized NURBS modeling software packages such as
• Autodesk Alias Surface and
• SolidThinking.

Bangalore Institute of Technology, Mech. Dept. Page 13


Real world application examples of Surface Modelling

Example 1

Surfaces or revolution can roughly approximate relatively large amount of different


shapes.This image demonstrates a surface created by revolving a 2D NURBS curve
around Y axis. The curve itself consists of 3 pieces (knot vector: 0, 0.2, 0.6, 0.6, 0.6, 1).
Join between the two upper pieces is smooth, because the multiplicity of knot 0.2 is 1
and curve degree is 3. On the other hand, knot 0.6 with multiplicity 3 causes a sharp
edge.

Bangalore Institute of Technology, Mech. Dept. Page 14


Example 2

Surface was created by moving a 2D NURBS curve along a path defined by another 3D
NURBS curve. This image shows a surface created by sweeping a 2D curve along a 3D
trajectory.

Bangalore Institute of Technology, Mech. Dept. Page 15


Example 3

NURBS surfaces need relatively large amount of control points, which makes them hard
to control.This image shows a NURBS surface and its control points. NURBS surfaces
are used rather rarely in their pure form because the number of control points is usually
large (4x4 in our simple case) and the surface becomes hard to control.

Bangalore Institute of Technology, Mech. Dept. Page 16


Example 4

The middle part of the text is magnified and the text is bent using a 2nd degree NURBS
volume.This image shows a 3D text that was transformed using a Bézier (or NURBS)
volume of degree 2. The text is bent and its central part is larger - that effect was
caused by the non-linear transformation defined by the NURBS volume (note the control
points in the center of the model).

Bangalore Institute of Technology, Mech. Dept. Page 17


Example 5

Highlights and reflections can reveal the perfect smoothing, which is otherwise
practically impossible to achieve without NURBS surfaces that have at least G2
continuity. This same principle is used as one of the surface evaluation methods
whereby a ray-traced or reflection-mapped image of a surface with white stripes
reflecting on it will show even the smallest deviations on a surface or set of surfaces.
This method is derived from car prototyping wherein surface quality is inspected by
checking the quality of reflections of a neon-light ceiling on the car surface. This method
is also known as "Zebra analysis".

Bangalore Institute of Technology, Mech. Dept. Page 18


Example 6

The smooth, undetailed form like shown above allows the engineer or designer to focus
on crafting a seamless surface model that will machine efficiently in the 3d printers.

The engineer or designer begins by modeling the Form from NURBS surfaces in Alias
Studio Tools. Ruled surfaces are stitched together to avoid gaps in the surface model,
which would cause the 3d print to fail.

Bangalore Institute of Technology, Mech. Dept. Page 19


Example 7

Modes of Modeling
• Wireframe Mode
• Faceted Mode
• Shaded Mode

Bangalore Institute of Technology, Mech. Dept. Page 20


Example 8

The NURBS system of points is also being used in facial characterizing.


This feature can be used for security purposes in a “facial recognition” software to give
access to the individual according to his facial features.

This feature is also being developed for forensic purposes.

Bangalore Institute of Technology, Mech. Dept. Page 21


Example 9

Topographical digitizing using surface modeling is one of the latest uses.

A satellite captures the various topographical features with and sends this data to a
control station. The control station then receives this data and processes it carefully with
the help of NURBS enabled surface modelling algorithms.

This had enabled geologists to study a piece of land at a great distance.


Eg.1) A volcano studying geologist can study active volcano without facing the possible
dangers of eruptions, ash clouds, etc.

Eg.2) Scientists can also study the surfaces of far off planets in more detail.

Bangalore Institute of Technology, Mech. Dept. Page 22


Example 10

Advanced Rendering tools –


• Rendering engine
Vray on 3DS max
• MentalRay on Maya
• Autodesk Showcase

CONCLUSION
The challenge of the presentation was to simplify this complex concept for a wider
audience to understand.

We can see how NURBS plays a vital role in surface modelling. Freeform surfacing
enables uses of CAD that were previously even hard to imagine. It increases
productivity of designing and engineering firms to a whole new level.

Bangalore Institute of Technology, Mech. Dept. Page 23


References
• “Surfaces” from mif.vu.lt/cs2/en/courses/intercg/files/surfaces.pdf. (Author
anonymous)
• “Sketch- and Constraint-based Design of B-spline Surfaces” by Paul Michalik,
Dae Hyun Kim, Beat D. Bruderlin
• http://www.rhino3d.com/nurbs.h
• http://www.rw-designer.com/NURBStm
• http://web.cs.wpi.edu/~matt/courses/cs563/talks/nurbs.html
• http://www.monkeedesign.com/interviews/2009/7/21/monkee-interviews-remi-
marchand-digital-designer.html
• aliasstudio.arnovillard.com/category/tutorials/
• www.carbodydesign.com/tutorials/?id=1826
• www.solidsmack.com/
• http://en.wikipedia.org/wiki/Freeform_surface
• http://en.wikipedia.org/wiki/NURBS
• http://en.wikipedia.org/wiki/Reflection_mapping
• http://en.wikipedia.org/wiki/B-spline

Bangalore Institute of Technology, Mech. Dept. Page 24

También podría gustarte