Geometric
Modelling
&
Curves
Geometric Modeling
Creating symbolic models of the
physical world has long been a goal of
mathematicians, scientists, engineers,
etc.
Recently technology has advanced
sufficiently to make computer modeling
of physical geometry feasible.
1
Modelers for Engineering
Modeling for engineering
applications require higher
accuracy of representation.
Engineering models are used in
computer-based design,
manufacturing and analysis.
Geometric modeling
simply means that design concepts are
digitally inputted into software
subsequently displays them in either
2-D or 3-D forms.
a general term applied to 3-D
computer-aided design techniques.
Geometric models are computational (symbol)
structures that capture the spatial aspects of
the objects of interest for an application.
2
Geometric model =
Geometry + Topology
Feature model =
Geometric model + Design intent
Design intent =
Constraints + Rules 5
Components of geometric modeling system
B-rep, CSG
3
What is Geometric modeling ?
The process of constructing a complete
mathematical description (geometric
database) to model a physical entity
or system.
Geometric Modeling
GM is a general term applied to 3D computer-
aided design techniques.
There are three main types of geometrical
modelling used, namely:
line or wireframe modelling,
surface modelling,
solid modelling.
4
How does geometric modeling fit into a
modern design sequence?
Computer-based geometric modeling is
used to:
• visualize,
• analyze,
• document,
• produce a product or process.
Geometric modeling
Engineering
Stress Analysis Thermal Geometric
Analysis Analysis
modeling is a
After-life
Analysis basic
engineering
Geometric modeling tool.
Design Process Serves as the
backbone of
CNC design
programming
Shadows the
Visualization
Engineering design process
Production drawing
planning
5
Geometric modeling
produce an appropriate database used for input
into specialized engineering software tools to
perform tasks in an integrated design sequence.
support the move to a seamless work
environment where the flow of data is
continuous and need not recreated at
each stage of design development.
Geometric modeling
6
Shape
modeling
Re- Feature
construction Analysis
Mesh
Simplification generation
Curve Surface Medial Dimension
detection
axis
Shape Segmentation
Sample Mesh Surface Volume
Geometry
• A typical solid model is defined by volumes, areas, lines, and
keypoints.
– Volumes are bounded by areas. They represent solid
objects.
– Areas are bounded by lines. They represent faces of solid
objects, or planar or shell objects.
– Lines are bounded by keypoints. They represent edges of
objects.
– Keypoints are locations in 3-D space. They represent
vertices of objects.
Volumes Areas Lines & Keypoints
7
...Geometry - Preprocessing
• There is a built-in hierarchy among solid model
entities. Keypoints are the “foundation” entities. Volumes
Lines are “built” from the keypoints, areas from Areas
lines, and volumes from areas. Lines
• This hierarchy holds true regardless of how the Keypoints
solid model is created.
• not allow you to delete or modify a lower-order
entity if it is attached to a higher-order entity.
(Certain types of modifications are allowed…
discussed later.)
Volumes
I’ll just
change Areas OOPs!
this line
Areas
Lines Lines
Keypoints Keypoints
Mathematical Representation of Curves
The user constructs a geometric model
of an object on a CAD/CAM system by
inputting the object data as required
by the modeling technique via user
interface.
The software converts such data into a
mathematical representation.
8
Mathematical Representation of Curves
Geometric modeling to CAD/CAM is
important; it is a mean to enable useful
engineering analyses and judgment.
In computer-based modeling and analysis,
geometric models determine their
relevance to design, analysis and
manufacturing.
Mathematical Representation of Curves
Methods of defining points
Explicit methods Implicit methods
Absolute cartesian coordinates
A digitize d
Y
+ P(x,y,z) +d
X
Z
Absolute cylindrical coordinates + E1
+ E1, E2
+ P(R,,z) + E2
R
+ E2
+ E1 + E2 + E1
9
Mathematical Representation of Curves
Methods of defining points
Explicit methods Implicit methods
Incremental cartesian coordinates
Δz + P1(x+Δx,y+Δy,z-Δz)
Y + C +C
Δx Δy
+
P0(x,y,z)
X +C
Z
Incremental cylindrical coordinates
+ P1(R+ΔR,+Δ,z)
ΔR
Δ
R + + +
P0(R,,z) I2
I1
Mathematical Representation of Curves
Methods of defining lines
Methods Illustration
Points defined by any method
+
+
+
+
Incremental cylindrical coordinates
Yw
Xw
Zw
10
Mathematical Representation of Curves
Methods of defining lines
Methods Illustration
Parallel or perpendical to an
existing line
Tangent to existing entities
Mathematical Representation of Curves
Methods of defining arcs and circles
Methods Illustration
Radius or diameter and center
R
R
+
2
1
+
Three points defined by any method
+ +
+
+
+
+
11
Mathematical Representation of Curves
Methods of defining arcs and circles
Methods Illustration
Center and a point on the circle
+
+
+
2
1
+
Tangent to line, pass through a given
point, and with a given radius
R
+
Mathematical Representation of Curves
Methods of defining ellipses
Methods Illustration
Center and axes lengths
A
B
+
Pc
+ +
+ +
Four points
+ +
+ +
Two conjugate diameters
12
Mathematical Representation of Curves
Methods of defining parabolas
Methods Illustration
Vertex and focus
Three points
+
P1
+
+
Pv
P2
Mathematical Representation of Curves
Methods of defining synthetic curves
Methods Illustration
Cubic spline P’0 P’n
+ +
+ +
+ Pn
+
P0 +
+ +
+
Bezier curves Pn
+
+ +
P0
+
+ +
+ Approximate a
B-Spline curves given set of data
+ points
+ +
+ +
+ Interpolate a
given set of data
+ + points
13
Curve Representation
• All forms of geometric modeling require
the ability to define curves.
• Linear curves (1st order) may be defined
simply through their endpoints.
• Must have a means for the
representation for curves of a higher
order:
– conics
– free form or space curves
Curve Representation
• Some terms we will use:
– Tangent vector:
Vector tangent to the slope of a curve at
a given point.
– Normal vector :
Vector perpendicular to the slope of a
curve at a given point.
14
Parametric curves;
Non-parametric and parametric forms
• Analytical representations of curves
– Parabola: y = b x2 + C
– Ellipse: x2/a2 + y2/b2 = 1
– Hyperbola: x y = k
• Implicit form: f (x, y) = 0
• Explicit form: y = f (x)
– hard to represent multi-valued function
Analytical representations
• Analytical forms are not suitable for CAD
because;
– Equation is dependent on coordinate sys.
– Curves are unbounded
– Implicit form is inconvenient for finding
points on the curve
– Difficult for transformation (rotation,
pan)
15
Curve Representation
• Curves may be defined using different
equation formats.
• explicit Y = f(X), Z = g(X)
• implicit f(X,Y,Z) = 0
• parametric X = X(t), Y = Y(t), Z = Z(t)
• The explicit and implicit formats have
serious disadvantages for use in
computer-based modeling
Parametric form
• Equations are de-coupled
• x = f (u)
• Matrix form: p (u) = [ u3 u2 u 1 ]
[A]
16
Curve Representation
• Parametric:
X = X(t), Y = Y(t), Z = Z(t);
0 ≤ t ≤ 1 (typ)
• Substituting a value for t gives a
corresponding position along curve
• Overcomes problems associated with
implicit and explicit methods
• Most commonly used representation
scheme in modelers
Parametric example
Recall the parametric line representation
Parametric representation of a line. The
parameter u, is varied from 0 to 1 to define
all points along the line.
X = X(u) Y = Y(u)
P2
u
P1
17
Parametric Line
• Line defined in terms of its endpoints
• Positions along the line are based upon
the parameter value
– For example, the midpoint of a line occurs at u
= 0.5
Parametric Line
• This means a parametric line can be defined
by:
L(u) = [x(u), y(u), z(u)] = A + (B - A)u
where A and B and the line endpoints. e.g. A
line from point A = (2,4,1) to point B = (7,5,5)
can be represented as:
x(u) = 2 + (7-2)u = 2 + 5u
y(u) = 4 + (5-4)u = 4 + u
z(u) = 1 + (5-1)u = 1 + 4u
18
Parametric cubic curves
• Algebraic form
• Geometric form: blending fn *
geometric (boundary) conditions
• Blending function: p (u) = [ F1 F2 F3 F4 ]
[ p(0), p(1), pu(0), pu(1) ]
• Magnitude and direction of tangent
vectors
• Cubic Hermite blending function
Boundary conditions
19
Blending functions
Parametric definition
Expanding the 2D parametric technique
we used for a line to 3D, two
parameters (u and v) are used.
P4
P2 P3
v
u
P1
20
Parametric definition
Points along edge P1 P2
have the form of P(u,0),
along P3 P4 , P(u,1) and so
on. P4
P(1,v) P(u,1)
P2 P3
v P(0,v)
P(u,0) u P1
Parametric definition
By varying value of u and
v, any point on the
surface or the edge of
the face may be P4
defined.
(u1,v1)
P2 P3
v
u
P1
21
Parametric definition
Another basic example would be that of a
conic (circle)
Two parameter curves are :
X = cos (u)
Y = sin (u)
with range –π/4 ≤ u ≤ π/4
Parametric definition
Cos(u) Sin (u)
–π/4 –π/4 –π/4 –π/4
Graph of X = cos (u) Graph of Y = sin (u)
22
Parametric definition
Y
u = π/4
0 1
u = –π/4
Combined curve is a quarter circle
Parametric definition
Controls for this curve
• Shape (based upon parametric equation)
• Location (based upon center point)
• Size
– arc (based upon parameter range)
– radius ( a coefficient to unit value)
• Similar list could be formed for other
conics
23
Curve Use in Design
Engineering design requires ability to
express complex curve shapes (beyond
conics).
– examples are the bounding curves for:
• turbine blades
• ship hulls
• automotive body panels
– also curves of intersection between
surfaces
Representing Complex Curves
Typically represented
– a series of simpler curves (each defined by
a single equation) pieced together at their
endpoints (piecewise construction).
– Simpler curves may be linear or polynomial
– Equations for simpler curves based upon
control points (data pts. used to define the
curve)
24
Use of control points
General curve shape may be generated
using methods of:
– Interpolation (also known as Curve fitting )
curve will pass though control points
– Approximation curve will pass near control
points may interpolate the start and end
points
Control Points Defining Curves
The following example shows an:
• Interpolating (passes through control
points)
• Piecewise linear curve
• curve defined by multiple segments, in
this case linear
25
Interpolating Curve
Piecewise linear
• Linear segments used to
approximate smooth shape
• Segments joints known as
KNOTS
• Requires too many
datapoints for most shape
approximations
Piecewise
• Representation not linear
flexible enough to editing
Piecewise polynomial
(composite curves)
• Segments defined by Interpolation
polynomial functions curve (cubic)
• Again, segments join at
KNOTS
• Most common
polynomial used is cubic
(3rd order)
• Segment shape
controlled by two or Piecewise
more adjacent control linear
points.
26
Knot points
• Locations where segments join referred
to as knots
• Knots may or may not coincide with
control points in interpolating curves,
typically they DO NOT coincide.
Curve continuity
• concern is continuity at knots (where
curve segments join)
• continuity conditions:
– point continuity (no slope or curvature
restriction)
– tangent continuity (same slope at knot)
– curvature continuity (same slope and
curvature at knot)
27
Composite curves
• Piecewise curves
• Curve segments
• Continuity conditions
Continuity is symbolically represented
by capital “C” with a superscript
representing level.
Curve continuity
– C0 continuity, point/position continuity
continuity of endpoint only, or continuity of
position
– C1 continuity, tangent continuity
tangent continuity or first derivative of
position
– C2continuity, curvature continuity:
Hydrodynamic character, Light reflection
curvature continuity or second derivative
of position
28
Composite curves: continuity
Point continuity Tangent continuity
Curvature continuity
Interpolation curves
• Interpolating piecewise polynomial curve
• Typically possess curvature continuity
• Shape defined by:
– endpoint and control point location
– tangent vectors at knots*
– curvature at knots*
*often calculated internally by software
29
Approximation techniques
Developed to permit greater design
flexibility in the generation of freeform
curves.
Two very common methods in modern CAD
systems, Bezier and B-Spline.
Approximation techniques
• employ control points (set of vertices
that approximate the curve)
• curves do not pass directly through
points (except possibly at start and
end)
• intermediate points affect shape as if
exerting a “pull” on the curve
• allow user to to set shape by “pulling”
out curve using control point location
30
Curves Both Bézier curves and B-splines are polynomial parametric
curves. Polynomial parametric forms can not represent some
simple curves such as circles.
Bézier curves and B-splines are generalized to rational Bézier
curves and Non-Uniform Rational B-splines, or NURBS for
short.
Rational Bézier curves are more powerful than Bézier curves
since the former now can represent circles and ellipses.
Similarly, NURBS are more powerful than B-splines.
Continuity The relationship among these
NURBS
B-spline
Rational
Bezier
Bezier
Recursive
Subdivision
Dr. M. Abid ([email protected])
Algorithm
Bezier curves
• P. Bezier of Renault, P. de Casteljau of
Citroen
• Intuitive interaction: Direct
manipulation
• Approximated curve vs. Interpolated
curve
• Control points
31
Bezier curve defined by 4 pts
Pull by coincident control points
32
Closed Bezier curve
Influence of point position
33
Bezier curve . . .
• Bernstein polynomial
• B i,n (u) = C(n,i) ui (1-u) n-i
• Binomial coefficient: Combination
• Invariant under affine transformation
• Convex hull property: Straight interval
• Variation diminishing property
Blending fn for a cubic Bezier curve
34
B-spline
curves
Piecewise Polynomials Approximating Splines
B0,1 B1,1 B2,1 B3,1 B4,1 B5,1 B6,1
B0,2 B1,2 B2,2 B3,2 B4,2 B5,2
B0,3 B1,3 B2,3 B3,3 B4,3
B0,4 B1,4 B2,4 B3,4
NURBS
B-Spline Synthetic Curves
Analytical curves are insufficient for
designing complex machinery parts and,
therefore synthetic curves are used.
Synthetic curves are commonly used when
interpolation curves are needed and it is easy
to modify these curves locally.
35
B-Spline Synthetic Curves
CAD\CAM systems have got 3 types of
synthetic curves such as Hermite cubic
splines, Bezier and B-spline curves.
Cubic splines are interpolating curves. Bezier
and B-splines are approximating curves. On
some cases B-splines can be interpolating.
B-Spline Synthetic Curves
B-spline curves are specified by giving set of
coordinates, called control points, which
indicates the general shape of the curve.
B-splines can be either interpolating or
approximating curves. Interpolation splines
used for construction and to display the
results of engineering.
36
Effect of curve order
• The higher the order of a curve, the
“stiffer” the curve (less dramatic
curvature changes)
• Maximum curve order dependent upon
the number of control points order =
one less than the number of control pts
• High order curves can exhibit
irregularities
B-Spline Synthetic Curves
With (m+1) control points, there are always (n=m+p-1)
basic functions. The basis functions are 1, at the end
points of the curve defined as a and b. If there’s no
other definition, then a=0 and b=1. {Pi} the set of the
control points forms the control polygon from Figure.
P3
P2
P4
Control
Polygon
B-spline curve
N0,p(a)=1
Nn,p(b)=1
P1
37
B-splines
• Generalization of Bezier curve
• Bezier: p(u) = S P B i,n (u)
• B-spline: p(u) = S P N j,k (u)
• Basis fn or blending fn is different
• Local changes
• Degree of the curve is independent of
# of control points
Linear, quadratic, cubic B-spline
38
Influence of control point position
Blending functions for linear B-spline
39
Quadratic B-spline blending fn (k=3)
Non-Uniform Rational,B-splines
Most modern CAD systems use the NURB
curve representation scheme.
• NURB stands for Non-Uniform,
Rational, B-spline.
• Uniformity deals with the spacing of
control points.
• Rational functions include a weighting
value at each control point for effect of
control point.
40
Non-Uniform Rational,B-splines
• very popular due to their flexibility in
curve generation.
• same mathematical form may be used to
represent entire family of curves
including:
– Bezier
– B-Spline
– conics
NURBS & CAD
For years major CAD software has been using
NURBS for good surface definition. However,
the exchange formats IGES and DXF are
more limited - hence, the original model can
become somewhat distorted in transfering
from one program to another.
41
NURBS & CAD
Add that to some inconsistency in how these
formats are defined and consider a task like
importing the NURBS sphere into a Coons Patch
based program.
With NURBS it is now possible to represent the
geometry the same as the CAD packages
represent it internally - so rather than using
faulty exchange formats we have partnered with
the major CAD vendors and now have a direct link
that will pull a model from memory in the CAD
program into one of our programs.
Rational parametric curves
• Normal Bezier or B-spline cannot
precisely represent conics and circles
• Homogeneous coordinate
• Ph = (hx, hy, hz, h)
• NURBS (non-uniform rational B-
splines)
84
42
Circular arc as a rational quadratic Bezier 85
43