Bezier
Bezier
University of Oslo
E-mail: {michaelf}@math.uio.no
computer technology, and is used extensively in many applications, such as the au-
curves and surfaces are a representation of such polynomial pieces that makes their in-
teractive design easier and more intuitive than with other representations. They were
developed in the 1960’s and 1970’s by Paul de Casteljau and Pierre Bézier, for use in
Curves
where: u is the local variable, u = (t − a)/(b − a); the points ci ∈ Rd are the control
The Euclidean space will often be R2 or R3 . The polygon formed by connecting the
of p tends to mimic the shape of the polygon, making it a popular choice for designing
B03 (u) = (1 − u)3 , B13 (u) = 3u(1 − u)2 , B23 (u) = 3u2 (1 − u), B33 (u) = u3 ,
shown in Figure 2.
Various properties of Bézier curves follow from properties of the Bernstein poly-
nomials. One is the endpoint property: p(a) = c0 and p(b) = cn . Another is that since
the Bin are non-negative and sum to one, every point p(t) is a convex combination of
the control points and p lies in the convex hull of the control points. Similarly, p lies
0.8
0.6
0.4
0.2
0
0 0.2 0.4 0.6 0.8 1
Fig. 2. The cubic Bernstein polynomials
Bounding boxes are useful for visualization, and for detecting intersections between
n−1
Bin (u) = uBi−1 (u) + (1 − u)Bin−1 (u),
one can evaluate (compute) p(t) for some t ∈ [a, b] using de Casteljau’s algorithm.
for r = 1, . . . , n, and i = 0, 1, . . . , n − r, the last point being the point on the curve:
p(t) = cn0 . This can be viewed as the following triangular scheme, here arranged row-
wise, with each row being computed from the row above:
c0n−1 c1n−1
cn0
4
Complex curves are often modelled by joining several Bézier curves together. If q :
then p and q join with C k continuity at t = b, i.e., q(r) (b) = p(r) (b) for all r = 0, 1, . . . , k,
if and only if
∆r d0 ∆r cn−r
= , r = 0, 1, . . . , k.
(c − b)r (b − a)r
Tensor-product surfaces
s − a1 t − a2
u= , v= .
b 1 − a1 b 2 − a2
The Euclidean space is usually R3 . The control net of p is the network of control points
ci,j ∈ Rd and all line segments of the form [ci,j , ci+1,j ] and [ci,j , ci,j+1 ].
On each of the four sides of D, the surface p is a Bézier curve whose control
polygon is one of the four boundaries of the control net of p. At the four corners of
D, the surface p equals one of the corners of the control net. Like Bézier curves, these
5
surfaces have the convex hull and bounding box properties. The point p(s, t) can be
evaluated by applying de Casteljau’s algorithm to the rows of points in the control net,
in each of the two directions, using m steps with respect to u and n steps with respect
Triangular surfaces
X
p(t) = ci Bin (u), t ∈ T,
|i|=n
u = (u, v, w), and the values u, v, w ≥ 0 are the barycentric coordinates of the point t
u + v + w = 1,
n! i j k
Bin (u) = uv w .
i!j!k!
3
B003
3 3
B102 B012
3 3 3
B201 B111 B021
3 3 3 3
B300 B210 B120 B030
w3
3uw2 3vw2
3u2 w 6uvw 3v 2 w
u3 3u2 v 3uv 2 v3
The points ci ∈ Rd are the control points of p, which, together with all line segments
that connect neighbouring points, form the control net of p. Two control points are
neighbours if they have one index in common and the other two indices differ by
one. A point that is not on the boundary has six neighbours. On each of the three
sides of T , the surface p is a Bézier curve whose control polygon is the corresponding
boundary polygon of the control net of p. At the corners of T , the surface equals
one of the corner control points. Triangular Bézier surfaces have the convex hull and
bounding box properties. There is a de Casteljau algorithm for evaluating p and there
are formulas for derivatives and conditions for joining pairs of such triangular surfaces
References
1. Farin G (1990), Curves and Surfaces for Computer Aided Geometric Design (2nd edition), Aca-
2. Prautzsch H, Boehm W, and Paluszny M (2002), Bézier and B-spline techniques, Springer, Berlin.