Drexel dragonThe Math ForumDonate to the Math Forum

Ask Dr. Math - Questions and Answers from our Archives
_____________________________________________
Associated Topics || Dr. Math Home || Search Dr. Math
_____________________________________________

Bezier Splines


Date: 12/03/96 at 23:15:55
From: Chris Deichmeister
Subject: Bezier Splines

I'm curious about the mathematics behind Bezier splines and I can't 
seem to find much information on the subject.  Could you explain the 
equations behind them?  Also, how might one graph them by hand or with 
a calculator such as the HP 48G (if possible)?

Thanks,

Chris Deichmeister


Date: 12/04/96 at 12:18:00
From: Doctor Tom
Subject: Re: Bezier Splines

Hi Chris,

Books about computer graphics are usually a good place to start.  Even
the most general computer graphics books usually have some references, 
and there are also lots of books on curves and surfaces in computer 
graphics.

You can also look in pure mathematics books on splines.  
Mathematicians call the basis functions "Bernstein Polynomials."
Bernstein was a mathematician, and Bezier worked for Renault, the 
French car company, and 'popularized' Bernstein's work for practical 
use.  Hence his name is usually associated with the splines.

They have tons of interesting mathematical and geometric properties,
so I won't list them all for you, but I'll give you a taste here.

They exist in all orders: linear, quadratic, cubic, quartic, ...  I'll
just use cubic splines in my example, but the ideas hold in any order.

To get the Bernstein basis functions, use a funny trick:  Write the 
number 1 as 1 = t + (1-t), and raise 1 to the third power (for cubic 
splines - for quartic, raise it to the fourth power, and so on):

1 = 1^3 = (t + (1-t))^3 = t^3 + 3*t^2*(1-t) + 3*t*(1-t)^2 + (1-t)^3

The basis functions are the 4 terms:

  B0(t) = t^3
  B1(t) = 3*t^2*(1-t)
  B2(t) = 3*t*(1-t)^2
  B3(t) = (1-t)^3

Because of the way you got it, B0(t)+B1(t)+B2(t)+B3(t) = 1, for all t.

Graph these functions (between 0 and 1) to see what they look like.

Do the same thing for quartic or quintic splines.

To use the Bernstein basis functions to make a spline, you need 4 
"control points" (5 for quartic, 3 for quadratic, and so on).

Let them be (x0,y0), (x1,y1), (x2,y2), (x3,y3).

(They can also be in three dimensions, if you like.)

The (cubic) Bezier spline with the four control points above is given 
by this equation:

(x0*B0(t)+x1*B1(t)+x2*B2(t)+x3*B3(t),y0*B0(t)+y1*B1(t)+y2*B2(t)+y3*
B3(t))

where t varies between 0 and 1.  This spline goes through (x0,y0)
and (x3,y3), it's tangent at those points is the line connecting 
(x0,y0) to (x1,y1) and to the line connecting (x3,y3) to (x2,y2).  
The shape of the curve is determined by the positions of (x1,y1) 
and (x2,y2).

(Sometimes books use a different notation, and the numbers of the
B0, B1, B2, and B3 are reversed.  In other words, B0(t) = (1-t)^3,
B1(t) = 3*t*(1-t)^2, and so on.)

-Doctor Tom,  The Math Forum
 Check out our web site!  http://mathforum.org/dr.math/   


Date: 12/05/96 at 08:46:44
From: Chris Deichmeister
Subject: Re: Bezier Splines

This is interesting stuff.  Thanks for your help!

Regards,

Chris Deichmeister
    
Associated Topics:
High School Equations, Graphs, Translations

Search the Dr. Math Library:


Find items containing (put spaces between keywords):
 
Click only once for faster results:

[ Choose "whole words" when searching for a word like age.]

all keywords, in any order at least one, that exact phrase
parts of words whole words

Submit your own question to Dr. Math

[Privacy Policy] [Terms of Use]

_____________________________________
Math Forum Home || Math Library || Quick Reference || Math Forum Search
_____________________________________

Ask Dr. MathTM
© 1994-2013 The Math Forum
http://mathforum.org/dr.math/