CAGD and Geometric Modeling Insights
CAGD and Geometric Modeling Insights
By
Department of Mathematics
The Islamia University of Bahawalpur
Bahawalpur 63100, PAKISTAN
General Introduction
The ability to represent, analyze, and manipulate shapes with mathematical pre-
cision is one of the cornerstones of modern science, engineering, and computer
technology. From the smooth curves of an automobile body to the aerodynamic
design of aircraft, from architectural visualization to animation in the entertain-
ment industry, the demand for flexible and accurate geometric tools has never been
greater. This demand has given rise to two closely related fields: Computer Aided
Geometric Design (CAGD) and Geometric Modeling. Together, they provide a
rigorous framework for the design and computation of curves surfaces, and solids
that meet both theoretical requirements and practical applications.
CAGD is primarily concerned with the mathematical theory of curves and sur-
faces. Its central focus is on developing methods to construct, analyze, and ma-
nipulate shapes with desired smoothness, continuity, and approximation proper-
ties. The origins of CAGD can be traced back to approximation theory, polyno-
mial splines, and numerical analysis, which provide the mathematical backbone
for curve and surface representation. In practice, CAGD introduces fundamental
tools such as Bézier curves, B-splines, rational curves, and Non-Uniform Ratio-
nal B-Splines (NURBS). These representations not only allow precise modeling of
conic sections and free-form shapes but also provide designers with powerful con-
trol mechanisms for shape manipulation. CAGD emphasizes mathematical rigor,
ensuring that curves and surfaces behave predictably under differentiation, inte-
gration, and geometric transformations.
Geometric Modeling
Geometric Modeling, while closely related to CAGD, shifts the focus toward the
representation, storage, and computational manipulation of geometric objects in
practical settings. It deals with how curves, surfaces, and solids are modeled inside
computer systems and how these representations are used in applications such as
CAD/CAM, computer graphics, industrial design, robotics, and visualization. Ge-
ometric Modeling encompasses both boundary representations (B-rep) and con-
structive solid geometry (CSG), providing structured ways to build complex mod-
els from simple primitives. It emphasizes algorithms for rendering, intersection,
and meshing, ensuring that mathematical curves and surfaces can be effectively
utilized in real-world computations. Thus, while CAGD supplies the mathemat-
ical foundation, Geometric Modeling ensures computational realization and ap-
plication.
This book is written to bridge the gap between theory and practice by present-
ing the mathematical foundations of CAGD and Geometric Modeling, followed
by their applications in design and computation. It covers essential topics such
as Bézier and B-spline curves, NURBS, spline functions, subdivision schemes, and
techniques of approximation and interpolation. Special emphasis is placed on both
rigorous derivation and practical implementation, ensuring that students gain a
deep understanding of the subject along with the ability to apply it to real prob-
lems. By the end of this text, students will be able to:
3. Construct and manipulate Bézier, B-spline, and rational curves and surfaces.
This balance of foundations and applications ensures that the book serves as both
a reference for advanced study and a practical guide for students and professionals
in mathematics, computer science, and engineering.
Chapter 1
Curve Representations and Properties
• Explicit representation
• Implicit representation
• Parametric representation
1
2 CHAPTER 1. CURVE REPRESENTATIONS AND PROPERTIES
A line: f (x) = 3x + 6,
√
An upper semi-circle: f (x) = + 1 − x2 ,
√
A lower semi-circle: f (x) = − 1 − x2 .
The explicit representations and corresponding curves are shown in Fig. 1.1.
Figure 1.1: Explicit representation and curves: (a) A line, (b) Upper and lower
semi-circles, (c) A circle.
A circle: f (x, y) = x2 + y 2 − 1,
where a, b, c, d, e and f are real constants. The implicit representations and curves
are shown in Figure 1.2
1.1. REPRESENTATIONS OF THE CURVES 3
Figure 1.2: Implicit representation and curves: (a) Circle (b) Ellipse (c) Parabola (d)
General conic section
Figure 1.3: Parametric representation and curves: (a) Line Q(t) = (at + b, ct + d), (b)
Circle Q(t) = (r cos t, r sin t), (c) Ellipse Q(t) = (a cos t, b sin t), (d) Parabola Q(t) =
(at2 , 2at).
Synthetic curves
Synthetic curves are the ones that are described by a set of data points (control
points) such as Bezier and B-splines curves (will be discussed later). The need for
synthetic curves in design arises on two occasions: when a curve is represented
by a collection of measured data points and when an existing curve must change
to meet new design requirements. Analytic curves are usually not sufficient to
meet geometric design requirements of mechanical parts. Synthetic curves pro-
vide designers with greater flexibility and control of a curve shape by changing the
positions of the control points. Products such as car bodies, ship hulls, airplane
fuselage and wings, propeller blades, shoe insoles, and bottles are a few examples
that require free-form, or synthetic, curves and surfaces.
1.2. TANGENT AND NORMAL VECTORS 5
A straight line that touches a curve at a point, but (locally) does not cross it at that
point, is called a tangent. Formally, for a differentiable parametric curve the tangent
at t = t0 is the line through Q(t0 ) in the direction of the derivative Q′ (t0 ).
A normal vector is any vector perpendicular to the tangent vector. A tangent vector
rotated by 90◦ (counterclockwise) using the rotation matrix gives a normal vector.
The rotation matrix for a 90◦ counterclockwise rotation is
π π
cos 2
− sin 2 0 −1
R90◦ = = .
π π
sin 2 cos 2 1 0
If Q(t) = (x(t), y(t)) is a parametric curve then the (velocity) tangent vector is
′
x (t)
T (t) = Q′ (t) = .
′
y (t)
0 −1 x′ (t) −y ′ (t)
N (t) = R90◦ T (t) = = ,
′ ′
1 0 y (t) x (t)
The equation of the tangent line at t = t0 (use a line parameter s to avoid confu-
sion with the curve parameter t) is
Figure 1.4: Illustration of tangent and normal vectors at a point Q(t0 ) on a curve.
The tangent vector is obtained from the derivative of the curve, and the normal
vector is obtained by a 90◦ rotation of the tangent.
Example 1.2.1. Find the tangent and normal lines of the parametric form of an
ellipse Q(t) = a cos t, b sin t , a, b > 0, at t0 = π.
Q(t) = a cos t, b sin t , a, b > 0,
0 −1 −a sin t −b cos t
N (t) = R90◦ T (t) = = .
1 0 b cos t −a sin t
Q(π) = a cos π, b sin π = (−a, 0),
T (π) = − a sin π, b cos π = (0, −b),
1.2. TANGENT AND NORMAL VECTORS 7
N (π) = − b cos π, −a sin π = (b, 0).
LT (s) = Q(π) + s T (π) = (−a, 0) + s(0, −b) = − a, −bs .
So for each s the point on the tangent has coordinates (−a, −bs). If you prefer
slope–intercept form: the tangent through (−a, 0) with direction vector (0, −b) is
vertical-free and has constant x = −a; this is a vertical translation only if T (π) had
a nonzero x-component (here x-component is 0), hence the tangent line is vertical
in the x-coordinate sense (constant x).
Normal line: similarly,
LN (s) = Q(π) + s N (π) = (−a, 0) + s(b, 0) = − a + bs, 0 .
Thus the normal lies along the horizontal axis through y = 0, passing through
(−a, 0) as s varies. Finally, check orthogonality:
as required.
As shown in Fig. 1.5, the ellipse at t = π has the point Q(π) = (−a, 0). The tangent
Figure 1.5: Ellipse Q(t) = (a cos t, b sin t) with tangent and normal lines at t = π.
vector is T (π) = (0, −b), which means the tangent direction has no x-component
8 CHAPTER 1. CURVE REPRESENTATIONS AND PROPERTIES
and only a y-component. This indicates that the tangent is vertical. Since it passes
through (−a, 0), the equation of the tangent line is x = −a. The normal vector is
N (π) = (b, 0), which is horizontal. Thus, the normal line passes through (−a, 0)
along the x-axis, giving y = 0. □
Example 1.2.2. Find the tangent and normal lines of the parametric form of a circle
Q(t) = r cos t, r sin t , r > 0, at t0 = π.
Q(t) = r cos t, r sin t , r > 0,
we have
Tangent line:
LT (s) = Q(π) + s T (π) = (−r, 0) + s(0, −r) = − r, −rs .
Normal line:
LN (s) = Q(π) + s N (π) = (−r, 0) + s(r, 0) = − r + rs, 0 .
Orthogonality is immediate:
as required.
1.3. PARAMETRIC AND GEOMETRIC CONTINUITY 9
Figure 1.6: Circle Q(t) = (r cos t, r sin t) with tangent and normal lines at t = π.
In Fig. 1.6, the circle at t = π has the point Q(π) = (−r, 0). The tangent vector is
T (π) = (0, −r), which again shows that the tangent has no x-component and only
a y-component. Therefore, the tangent line is vertical. Passing through (−r, 0), its
equation is x = −r. The normal vector at t = π is N (π) = (r, 0), which lies along
the x-axis. Hence, the normal line through (−r, 0) is y = 0. □
continuity that is the parametric continuity studies that how much smooth is the
road. While geometric continuity indicates visual smoothness of the curve. For
example, movie screen.
Let f (t) be a piecewise function defined on an interval [a, b], and let c ∈ [a, b] be a
joining point between two pieces.
Cn (Parametric) Continuity
The function f (t) is said to have parametric continuity if the derivatives up to order
n are continuous at c:
• C 1 : f (c− ) = f (c+ ) and f ′ (c− ) = f ′ (c+ ) (tangent vectors match in both direc-
tion and magnitude),
Gn (Geometric) Continuity
The function f (t) is said to have geometric continuity if the geometric properties (posi-
tion, tangent direction, curvature, etc.) are continuous, allowing the magnitude of
derivatives to differ:
Here, f (c− ) and f (c+ ) denote the left-hand and right-hand limits of f at c. Sim-
ilarly, f ′ (c− ) and f ′ (c+ ) denote the one-sided derivatives. For G1 , f ′ (c− ) ∥ f ′ (c+ )
means the tangent vectors are proportional: f ′ (c− ) = k1 f ′ (c+ ) for some k1 > 0. For
G2 , curvature continuity involves both first and second derivatives.
Figure 1.7 illustrates parametric continuity (C 0 –C 3 ), and Figure 1.8 shows geo-
metric continuity (G0 –G3 ).
Example 1.3.1. Consider a camera that moves along an elliptic trajectory, but with
an altered parametric representation: At t = a the camera’s speed suddenly in-
creased by a factor of three 3. The equation describing the motion is
(w cos(t), h sin(t)), if 0 ⩽ t ⩽ a,
f (t) =
(w cos(3t − 2a), h sin(3t − 2a)), if a ⩽ t ⩽ 2(π+a)
3
.
Explanation: In Fig. 1.9, the camera moves smoothly along the path, but at t = a
its speed suddenly triples. The position stays the same, and you can see the faster
motion from the longer arrows after the speed change. Here, w = 3, h = 2, and
a = 1.
Therefore f (a− ) = f (a+ ). Hence f is C 0 and G0 -continuous at point a. Since cos and
sin functions are continuous over the entire domain so f is C 0 and G0 -continuous
over the entire domain. Since
(−w sin(t), h cos(t)), if 0 ⩽ t ⩽ a,
′
f (t) =
(−3w sin(3t − 2a), 3h cos(3t − 2a)), 2(π+a)
if a ⩽ t ⩽ 3
.
Therefore
This implies
Figure 1.10: Co-continuity at t = a: C 0 ok, C 1 no, G1 ok, G2 ok. Left and right
tangents at the joint point are shown.
1.4. POLYNOMIALS 15
1.4 Polynomials
where an , an−1 , · · · , a2 , a1 , a0 are real coefficients and all the powers are non-negative
integers. This polynomial is represented by the linear combination of certain ele-
mentary polynomial 1, t1 , t2 , · · · , tn . The order of polynomial is one more than the
degree of polynomial. That is if the degree of polynomial is n then its order is n + 1
(total number of coefficients).
The set of polynomials of degree less than or equal to n forms a vector space and
the set of elementary polynomials {1, t1 , t2 , · · · , tn } forms a basis for this vector
space.
A cubic polynomial is the minimum-order polynomial that can guarantee the gen-
eration of C 0 , C 1 and C 2 curves. The higher-order polynomials are not commonly
used in Computer Aided Design (CAD) systems because they tend to oscillate
about control points, are computationally inconvenient, and are uneconomical of
storing curve representations in the computer.
The parametric polynomial of degree 1 is defined as p(t) = (at + b, ct + d), where
a, b, c and d are constants. Of course the shape of this polynomial is a straight line.
The parametric polynomial of degree 2 is defined as p(t) = (at2 + bt + c, dt2 + et + f ),
where a, b, c, d, e and f are constants and (a, d ̸= 0). The shape of this polynomial
is parabola. Similarly, one can define higher degree parametric polynomials. As
shown in Figure 1.11, the polynomial curves of degree one, two, and three exhibit
distinct behaviors.
The well known implicit 2nd degree polynomial to generate conic section is f (x, y) =
Ax2 + Bxy + Cy 2 + Dx + Ey + F , where A, B, C, D, E, F , are real constants. If
As shown in Figure 1.12, the three main types of conic sections—ellipse, parabola,
and hyperbola—are illustrated with their corresponding constants.
Unfortunately, there do not exist 2nd degree parametric polynomial to generate
Figure 1.12: Conic sections generated from the implicit 2nd-degree polynomial.
Each subplot shows the constants used for plotting: Ellipse, Parabola, Hyperbola.
conic section. But luckily, there exists a 2nd degree rational parametric polynomial
to represent conic section defined in the form of ratio of two polynomials.
!
x0 (1 − t)2 + 2wx1 t(1 − t) + x2 t2 y0 (1 − t)2 + 2wy1 t(1 − t) + y2 t2
p(t) = , .
(1 − t)2 + 2wt(1 − t) + t2 (1 − t)2 + 2wt(1 − t) + t2
Properties
For 0 ≤ t ≤ 1:
• w = 1 → segment of a parabola
Important Remark
This rational parametric curve generates only a segment of the conic section be-
tween p0 and p2 . It does not generate the complete ellipse, parabola, or hyperbola.
To represent a full conic, multiple segments must be joined appropriately, or a dif-
ferent parametric form of the full conic must be used. This limitation arises from
the domain t ∈ [0, 1] and the influence of the single intermediate control point
p1 . The resulting figure (Fig. 1.13) shows all three segments in a single plot, with
control points marked.
18 CHAPTER 1. CURVE REPRESENTATIONS AND PROPERTIES
where i = 0, 1, . . . , n.
19
20 CHAPTER 2. BEZIER CURVE AND B-SPLINE CURVE
n n
Since −i
= 0, then Bi,n (t) = 0. Now consider the case when i > n. Since i
= 0,
for i > n, so
n i
Bi,n (t) = t (1 − t)n−i = 0.
i
2.1. BERNSTEIN POLYNOMIAL 21
Property 2.1.3.
1, if i = 0,
Bi,n (0) = (2.5)
0, if i ̸= 0.
Since, 00 = 1, therefore
n 0 n
B0,n (0) = 0 (1) = 1 × 1 × 1 = 1.
0
Property 2.1.4.
1, if i = n,
Bi,n (1) = (2.6)
0, if i = 0, 1, 2, . . . , n − 1.
Since, 00 = 1, therefore
n n 0
Bn,n (1) = 1 (0) = 1 × 1 × 1 = 1.
n
22 CHAPTER 2. BEZIER CURVE AND B-SPLINE CURVE
Property 2.1.5. Bernstein polynomial of degree n is the linear combination of the Bernstein
polynomial of degree n − 1.
Pn
Property 2.1.6. Bernstein polynomials form a partition of unity i.e. i=0 Bi,n (t) = 1.
This implies
n
X
n n
1 = 1 = [(1 − t) + t] = Bi,n (t). (2.7)
i=0
d
Bi,n (t) = n [Bi−1,n−1 (t) − Bi,n−1 (t)] , for 0 < i < n. (2.8)
dt
d
Proof. Consider B (t)
dt i,n
d n i n−i n i−1
it (1 − t)n−i − ti (n − i)(1 − t)n−i−1
= t (1 − t) =
dt i i
n i−1 n i
= it (1 − t)n−i − t (n − i)(1 − t)n−i−1 .
i i
This implies
n! n!
= iti−1 (1 − t)n−i − ti (n − i)(1 − t)n−i−1
i!(n − i)! i!(n − i)!
n(n − 1)!
= iti−1 (1 − t)n−i
i(i − 1)!(n − 1 − (i − 1))!
n(n − 1)!
− ti (n − i)(1 − t)n−i−1
i!(n − i)(n − i − 1)!
n − 1 i−1 n−1 n−1 i
= n t (1 − t) −n t (1 − t)n−i−1 .
i−1 i
d
Bi,n (t) = n [Bi−1,n−1 (t) − Bi,n−1 (t)] .
dt
Proof. By definition
n i
Bi,n = t (1 − t)n−i .
i
24 CHAPTER 2. BEZIER CURVE AND B-SPLINE CURVE
Any of the lower degree Bernstein polynomial of degree less than n can be ex-
pressed as a linear combination of Bernstein polynomial of degree n.
Theorem 2.1.9. Prove that any Bernstein polynomial of degree n − 1 can be written as a
linear combination of degree n.
Consider
n i n−i n i+1
tBi,n (t) = t t (1 − t) = t (1 − t)(n+1)−(i+1)
i i
n
n + 1 i+1
= n+1i
t (1 − t)(n+1)−(i+1) .
i+1
i + 1
This implies
n! n!
i!(n−i)! i!(n−i)!
tBi,n (t) = (n+1)!
Bi+1,n+1 (t) = (n+1)!
Bi+1,n+1 (t).
(i+1)!(n+1)−(i+1)! (i+1)!(n−i)!
Again implies
n! (i + 1)!(n − i)!
tBi,n (t) = Bi+1,n+1 (t).
i!(n − i)! (n + 1)!
Or
n! (i + 1)i!(n − i)!
tBi,n (t) = Bi+1,n+1 (t).
i!(n − i)! (n + 1)n!
2.1. BERNSTEIN POLYNOMIAL 25
Further implies
i+1
tBi,n (t) = Bi+1,n+1 (t).
n+1
Now consider
n i n−i n i
(1 − t)Bi,n (t) = (1 − t) t (1 − t) = t (1 − t)n+1−i
i i
n n
i n+1 i n+1−i i
= n+1 t (1 − t) = n+1 Bi,n+1 (t).
i
i i
This implies
n!
i!(n−i)! n! i!(n + 1 − i)!
(1 − t)Bi,n (t) = (n+1)!
Bi,n+1 = Bi,n+1 .
i!(n − i)! (n + 1)!
i!(n+1−i)!
Again implies
Further implies
i
(1 − t)Bi,n (t) = 1− Bi,n+1 .
n+1
Replace n by n − 1
i i+1
Bi,n−1 (t) = 1− Bi,n + Bi+1,n (t).
n n
Theorem 2.1.10. Prove that every Bernstein polynomial of degree n can be written in
terms of power basis 1, t, t2 , t3 , · · · , tn .
By Binomial theorem
n−k n−k n−k 0 n−k
(1 − t) = (1) (−t) + (1)n−k−1 (−t)1
0 1
n−k n−k−2 2 n−k
+ (1) (−t) + · · · · · · + (1)0 (−t)n−k .
2 n−k
This implies
n−k
n−k
X n−k
(1 − t) = (−1)i (t)i .
i=0
i
So
(X
n−k )
n k n−k i i
Bk,n (t) = t (−1) (t) .
k i=0
i
This implies
i=n−k
X
n n−k
Bk,n (t) = (−1)i (t)k+i .
i=0
k i
i−k=n−k
X
n n−k
Bk,n (t) = (−1)i−k (t)k+(i−k) .
i−k=0
k i−k
2.1. BERNSTEIN POLYNOMIAL 27
Further implies
i=n
X n n−k
Bk,n (t) = (−1)i−k (t)i .
i=k
k i−k
Since Bk,n (t) is arbitrary Bernstein polynomial of degree n, therefore every Bern-
stein polynomial of degree n can be written as linear combination of monomials.
This completes the proof.
Example 2.1.1. Let P 3 (t) be the set of polynomials of degree ≤ 3 then prove that
the set of power basis {1, t, t2 , t3 } is the basis of P 3 (t).
• S is linearly independent,
• S generates (i.e. span) P 3 (t). This means every polynomial of degree less
than or equal to 3 can be expressed as the linear combination of 1, t, t2 , t3 .
First we prove that S is linearly independent. For this consider the linear combina-
tion of 1, t, t2 , t3 and put it as 0 i.e.
a0 t0 + a1 t1 + a2 t2 + a3 t3 = 0,
where a, b, c and d are known constants. This element is equal to the linear com-
bination of the elements of S, so S generates P 3 (t). In other words, the power
28 CHAPTER 2. BEZIER CURVE AND B-SPLINE CURVE
basis {1, t, t2 , t3 } form a space of polynomials of degree less than or equal to 3. This
completes the proof. □
Similarly, we can prove that the power basis {1, t, t2 , t3 , . . . tn } form a space of
polynomials of degree less than or equal to n.
Example 2.1.2. Prove that the set of Bernstein polynomials S={B0,3 (t), B1,3 (t), B2,3 (t),
B3,3 (t)} of degree three is the basis of a space of polynomials P 3 (t) of degree less
than or equal to 3.
Solution. First prove that S is linearly independent, for this take linear combina-
tion of elements of S and set it zero
This implies
(−a0 + 3a1 − 3a2 + a3 )t3 + (3a0 − 6a1 + 3a2 )t2 + (−3a0 + 3a1 )t + a0
= 0t3 + 0t2 + 0t + 0.
−3a0 + 3a1 = 0
a0 = 0
2.1. BERNSTEIN POLYNOMIAL 29
at3 + bt2 + ct + d = a0 B0,3 (t) + a1 B1,3 (t) + a2 B2,3 (t) + a3 B3,3 (t).
at3 + bt2 + ct + d
= (−a0 + 3a1 − 3a2 + a3 )t3 + (3a0 − 6a1 + 3a2 )t2 + (−3a0 + 3a1 )t + a0 .
−3a0 + 3a1 = c
a0 = d.
Now since
This implies
−3d − 2c + 3a2 = b.
Again implies
a2 = (b + 3d + 2c)/3.
Now since
This implies
−d − c − b + a3 = a.
Again implies
a3 = a + b + c + d.
2.2. BE’ZIER CURVE 31
at3 + bt2 + ct + d = a0 B0,3 (t) + a1 B1,3 (t) + a2 B2,3 (t) + a3 B3,3 (t)
This means every elements of P 3 (t) is the linear combination of Bernstein polyno-
mials of degree 3. So the set S generates P 3 (t). Since S is also linearly independent.
Hence the set of Bernstein polynomials of degree 3 is the basis of a space of poly-
nomials of degree less than or equal to 3. □
n
X
P (t) = pi Bi,n (t), t ∈ [0, 1] , (2.9)
i=0
n
i
where Bi,n (t) = i
t (1 − t)n−i is a Bernstein polynomial of degree n. If pi = (xi , yi )
then (2.9) can be written as
n n
!
X X
P (t) = (x(t), y(t)) = xi Bi,n (t), yi Bi,n (t) . (2.10)
i=0 i=0
Example 2.2.1. Find the Be’zier curve which has control points (2, 2), (1, 1.5), (3.5, 0),
(4, 1).
Solution. Let
3
X
x(t) = xi Bi,3 (t) = x0 B0,3 (t) + x1 B1,3 (t) + x2 B2,3 (t) + x3 B3,3 (t).
i=0
get
= 2 − 3t + 10.5t2 − 5.5t3 .
Again let
3
X
y(t) = yi Bi,3 (t) = y0 B0,3 (t) + y1 B1,3 (t) + y2 B2,3 (t) + y3 B3,3 (t).
i=0
The Bezier curve with control points (2, 2), (1, 1.5), (3.5, 0), (4, 1) along with its
control polygon is shown in Figure 2.2.
2.2. BE’ZIER CURVE 33
Figure 2.2: Bezier curve P (t) = (x(t), y(t)) and the control polygon connecting the
points (2, 2), (1, 1.5), (3.5, 0), (4, 1).
Example 2.2.2. Find the Be’zier curves P (t) and Q(t) of degree 3 which have set of
control points {(0, 3), (1, 5), (2, 1), (3, 3)} and {(3, 3), (4, 5), (5, 1), (6, 3)} respectively.
Solution. First we find Be’zier curve P (t) = (x(t), y(t)) of degree 3, having the set
of control points (xi , yi ) = {(0, 3), (1, 5), (2, 1), (3, 3)}. Since
3
X
x(t) = xi Bi,n (t) = x0 B0,3 (t) + x1 B1,3 (t) + x2 B2,3 (t) + x3 B3,3 (t).
i=0
Then by using (2.4), and (xi , yi ) = {(0, 3), (1, 5), (2, 1), (3, 3)}
= 3t
Now since
3
X
y(t) = yi Bi,3 (t) = y0 B0,3 (t) + y1 B1,3 (t) + y2 B2,3 (t) + y3 B3,3 (t).
i=0
34 CHAPTER 2. BEZIER CURVE AND B-SPLINE CURVE
Then by using (2.4), and (xi , yi ) = {(0, 3), (1, 5), (2, 1), (3, 3)}, we get
= 12t3 − 18t2 + 6t + 3.
Thus the Be’zier curve P (t) of degree 3, having the set of control points (xi , yi ) =
{(0, 3), (1, 5), (2, 1), (3, 3)} is
Now we find Be’zier curve Q(t) = (x(t), y(t)) of degree 3, having the set of control
points (xi , yi ) = {(3, 3), (4, 5), (5, 1), (6, 3)}. Since
3
X
x(t) = xi Bi,n (t) = x0 B0,3 (t) + x1 B1,3 (t) + x2 B2,3 (t) + x3 B3,3 (t).
i=0
Then by using (2.4), and (xi , yi ) = {(3, 3), (4, 5), (5, 1), (6, 3)}
= 3 + 3t.
Again since
3
X
y(t) = yi Bi,3 (t) = y0 B0,3 (t) + y1 B1,3 (t) + y2 B2,3 (t) + y3 B3,3 (t).
i=0
Then by using (2.4), and (xi , yi ) = {(3, 3), (4, 5), (5, 1), (6, 3)}
= 12t3 − 18t2 + 6t + 3.
2.2. BE’ZIER CURVE 35
Thus the Be’zier curves Q(t) of degree 3, having the set of control points (xi , yi ) =
{(3, 3), (4, 5), (5, 1), (6, 3)} is
The Bezier curves P (t) and Q(t) of degree 3 with their respective control points
are shown in Figure 2.3. The figure also includes the control polygons connecting
the control points.
Figure 2.3: Bezier curves P (t) and Q(t) along with their control polygons. Control
points for P (t): (0, 3), (1, 5), (2, 1), (3, 3); for Q(t): (3, 3), (4, 5), (5, 1), (6, 3).
Property 2.2.1. Be’zier curve is continuous and has continuous derivatives on the interval
[0, 1].
n
X
P (t) = pi Bi,n (t), t ∈ [0, 1],
i=0
where Bi,n (t) are Bernstein polynomials. We know that every polynomial is con-
tinuous and has continuous derivatives of all order. It follows that Bezier curve is
also continuous and all its derivative exists and are continuous. This completes the
proof.
36 CHAPTER 2. BEZIER CURVE AND B-SPLINE CURVE
n
X
P (t) = pi Bi,n (t).
i=0
n
X
P (0) = pi Bi,n (0) = p0 B0,n (0) + p1 B1,n (0) + p2 B2,n (0) + · · ·
i=0
+pn Bn,n (0).
By using (2.5)
For t = 1
n
X
P (1) = pi Bi,n (1) = p0 B0,n (1) + p1 B1,n (1) + p2 B2,n (1) + · · ·
i=0
+pn Bn,n (1).
By using (2.6)
Hence Be’zier curve always passes through initial and final pints. This completes
the proof.
Property 2.2.3. The tangent to a Be’zier curve at the end points are parallel to the lines
through end points and adjacent control points.
As shown in Figure 2.4, the tangents at the endpoints are parallel to the adjacent control
lines, visually confirming the proposition.
Proof. If P (t) is a Be’zier curve and P ′ (t) is it derivative then we will proof that
Tangent P ′ (0) at p0 is parallel to the line passes through p0 and p1 .
2.2. BE’ZIER CURVE 37
Figure 2.4: Bézier curve with control polygon and tangents at endpoints. Tangents
(red at t = 0, blue at t = 1) are parallel to lines through the first and last pairs of
control points, illustrating the tangent property of Bézier curves.
P ′ (0) = n(p1 − p0 ),
n
′
X d
P (t) = pi (Bi,n (t)).
i=0
dt
By (2.8), we have
n
X
P ′ (t) = n pi [Bi−1,n−1 (t) − Bi,n−1 (t)] . (2.14)
i=0
For t = 0, we get
n
X
P ′ (0) = n pi [Bi−1,n−1 (0) − Bi,n−1 (0)]
i=0
= n [p0 {B0−1,n−1 (0) − B0,n−1 (0)} + p1 {B0,n−1 (0) − B1,n−1 (0)}
= n(p1 − p0 ).
Now for t = 1
n
X
′
P (1) = n pi [Bi−1,n−1 (1) − Bi,n−1 (1)]
i=0
= n [p0 {B0−1,n−1 (1) − B0,n−1 (1)} + p1 {B0,n−1 (1) − B1,n−1 (1)}
P ′ (1) = np0 {0 − 0} + p1 {0 − 0} + p2 {0 − 0} + · · ·
Property 2.2.4. The curvature at the end points of control polygon of Be’zier curve are
parallel to p2 − 2p1 + p0 and pn − 2pn−1 + pn−2 .
As shown in Figure 2.5, the curvature vectors at the endpoints of the Bézier curve are
aligned with the second differences of the control polygon, illustrating the proposition vi-
sually.
Proof. If P (t) is a Be’zeir curve and P ′′ (t) is its 2nd derivative then, we will proof
that
By (2.14), we have
n
X
′
P (t) = n pi {Bi−1,n−1 (t) − Bi,n−1 (t)}.
i=0
2.2. BE’ZIER CURVE 39
Figure 2.5: The curvature at the end points of control polygon of Be’zier curve are
parallel to p2 − 2p1 + p0 and pn − 2pn−1 + pn−2 .
n
′′
X d d
P (t) = n pi Bi−1,n−1 (t) − Bi,n−1 (t) .
i=0
dt dt
By using (2.8)
n
X
′′
P (t) = n(n − 1) pi {[Bi−2,n−2 (t) − Bi−1,n−2 (t)]
i=0
− [Bi−1,n−2 (t) − Bi,n−2 (t)]}
Xn
= n(n − 1) pi [Bi−2,n−2 (t) − 2Bi−1,n−2 (t) + Bi,n−2 (t)] .
i=0
For t = 0
n
X
′′
P (0) = n(n − 1) pi [Bi−2,n−2 (0) − 2Bi−1,n−2 (0) + Bi,n−2 (0)] .
i=0
40 CHAPTER 2. BEZIER CURVE AND B-SPLINE CURVE
Expanding
+······
By using (2.5)
+p3 [0 − 0 + 0] + · · · · · · + pn [0 − 0 + 0]}
Now for t = 1
n
X
′′
P (1) = n(n − 1) pi [Bi−2,n−2 (1) − 2Bi−1,n−2 (1) + Bi,n−2 (1)] .
i=0
Expanding
Again by (2.6)
+ pn [1 − 0 + 0]}
Example 2.2.3. Consider the composite Be’zier curve made by Be’zier curves P (t)
and Q(t) of degree 3 with points sets: {(0, 3), (1, 5), (2, 1), (3, 3)} and {(3, 3), (4, 5),
(5, 1), (6, 3)} respectively. Then discuss the parametric and geometric continuities.
This implies
We see that P (1) = Q(0) = (3, 3), i.e. last point of P (t) and initial point of Q(t) are
same, so P (t) and Q(t) are join together. In other word, both pieces are joined by
C 0 -continuity as well as G0 -continuity. Since P (t) and Q(t) are polynomials and
polynomials are continuous, therefore composite Be’zier curve is C 0 as well as G0 -
continuous over the entire domain.
Now since P (1) = Q(0) = (3, 3) and P ′ (1) = Q′ (0) = (3, 6), this means P (t) and
Q(t) are join together by C 1 -continuity as well as G1 -continuity. Since P (t) and
42 CHAPTER 2. BEZIER CURVE AND B-SPLINE CURVE
Q(t) are polynomials and polynomials are continuous, therefore composite Be’zier
curve is C 1 as well as G1 -continuous over the entire domain.
Now since P (1) = Q(0) = (3, 3) and P ′ (1) = Q′ (0) = (3, 6) and P ′′ (1) = (0, 36) ̸=
Q′′ (0), this means P (t) and Q(t) are not joined together by C 2 -continuity. But
P (1) = Q(0) = (3, 3) and P ′ (1) = Q′ (0) = (3, 6) and Q′′ (0) = (0, −36) = −1(0, 36) =
−1P ′′ (1), this means P (t) and Q(t) are joined together by G2 -continuity. Therefore
composite Be’zier curve is G2 continuous over the entire domain but not C 2 con-
tinuous.
Since P (1) = Q(0) = (3, 3), P ′ (1) = Q′ (0) = (3, 6), Q′′ (0) = −1P ′′ (1), and P ′′′ (1) =
Q′′′ (0) = (0, 72), therefore composite Be’zier curve is G3 -continuous over the entire
domain. Similarly, we see that composite Be’zier curve is G∞ -continuous over the
entire domain. This completes the proof. □
Alternate method to check C 0 , C 1 and C 2 -continuities:
Solution. From above example, {p0 , p1 , p2 , p3 }={(0, 3), (1, 5), (2, 1), (3, 3)} and {q0 , q1 ,
q2 , q3 } = {(3, 3), (4, 5), (5, 1), (6, 3)}. Since the end point p3 = (3, 3) of P (t) and first
point q0 = (3, 3) of Q(t) is same, therefore P (t) and Q(t) are joined. That is C 0 -
continuity exist at the joint.
By (2.12), we know that P ′ (1) = n(pn − pn−1 ) and Q′ (0) = n(q1 − q0 ), but n = 3, so
So P ′ (1) = Q′ (0) = (3, 6). Hence P (t) and Q(t) are joined with C 1 continuity.
By (2.15),
For n = 3, we have
This implies
Since P ′′ (1) ̸= Q′′ (0), so P (t) and Q(t) are not joined with C 2 continuity. But
therefore all cubic Be’zier curves are joined so composite Be’zier curve is C 0 as well
as G0 -continuous.
44 CHAPTER 2. BEZIER CURVE AND B-SPLINE CURVE
Figure 2.6: Composite Bézier curves P (t), Q(t), R(t), and S(t) with their control
polygons.
Figure 2.7: Composite Bézier curves with different colors. Red points denote junc-
tions between curves.
C 1 -, G1 -continuity:
As P ′ (1) ̸= Q′ (0), so P (t) and Q(t) curves are not smoothly joint that is not joined
with C 1 continuity. Here G1 -continuity also does not exist. Since
As Q′ (1) ̸= R′ (0), so Q(t) and R(t) are not joined with C 1 continuity. But Q′ (1) =
(12, 0) = 2(6, 0) = 2R′ (0), so Q(t) and R(t) are joined with G1 continuity. Since
As R′ (1) ̸= S ′ (0), so R(t) and S(t) are not joined with C 1 continuity. Here G1 -
continuity also does not exist. Here we conclude that the composite Be’zier curve
is not C 1 as well not G1 -continuous on the entire domain. □