The parametric equations for  [Graphics:Images/BezierCurveMod_gr_79.gif]  for  [Graphics:Images/BezierCurveMod_gr_80.gif]  found in most text books are

    [Graphics:Images/BezierCurveMod_gr_81.gif],  
and
    [Graphics:Images/BezierCurveMod_gr_82.gif].  
    
We now derive these equations using Mathematica.

Derivation.

Remark. If you have stored anything in  [Graphics:../Images/BezierCurveMod_gr_83.gif], [Graphics:../Images/BezierCurveMod_gr_84.gif], [Graphics:../Images/BezierCurveMod_gr_85.gif], or [Graphics:../Images/BezierCurveMod_gr_86.gif] with subscripts, you will need to Remove them, which is stronger than  Clear them. This is complicated, so in doubt do the following.  
Warning.  Do not  Remove a variable that does not exist.  

[Graphics:../Images/BezierCurveMod_gr_87.gif]

Proceed with the derivation.  

[Graphics:../Images/BezierCurveMod_gr_88.gif]

[Graphics:../Images/BezierCurveMod_gr_89.gif]

There are eight coefficients which must be computed.  So we will need eight equations.  
The following two equations force the Bézier curve to pass through the starting point [Graphics:../Images/BezierCurveMod_gr_90.gif]

[Graphics:../Images/BezierCurveMod_gr_91.gif]

[Graphics:../Images/BezierCurveMod_gr_92.gif]

[Graphics:../Images/BezierCurveMod_gr_93.gif]

The next two equations force the Bézier curve to pass through the destination point [Graphics:../Images/BezierCurveMod_gr_94.gif]

[Graphics:../Images/BezierCurveMod_gr_95.gif]

[Graphics:../Images/BezierCurveMod_gr_96.gif]

[Graphics:../Images/BezierCurveMod_gr_97.gif]

The following two equations force the Bézier curve to have the desired tangent vector at [Graphics:../Images/BezierCurveMod_gr_98.gif] pointing in the direction of the control point [Graphics:../Images/BezierCurveMod_gr_99.gif].

[Graphics:../Images/BezierCurveMod_gr_100.gif]

[Graphics:../Images/BezierCurveMod_gr_101.gif]

[Graphics:../Images/BezierCurveMod_gr_102.gif]

The next two equations force the Bézier curve to have the desired tangent vector at [Graphics:../Images/BezierCurveMod_gr_103.gif] pointing in the direction of the control point [Graphics:../Images/BezierCurveMod_gr_104.gif].

[Graphics:../Images/BezierCurveMod_gr_105.gif]

[Graphics:../Images/BezierCurveMod_gr_106.gif]

[Graphics:../Images/BezierCurveMod_gr_107.gif]

We now use Mathematica to solve the eight equations for the eight coefficients required to form the two cubic equations.
Aside. The reason we introduce the factor [Graphics:../Images/BezierCurveMod_gr_108.gif] will be apparent when we look at the solution using Bernstein polynomials.  

 

[Graphics:../Images/BezierCurveMod_gr_109.gif]


[Graphics:../Images/BezierCurveMod_gr_110.gif]

[Graphics:../Images/BezierCurveMod_gr_111.gif]

[Graphics:../Images/BezierCurveMod_gr_112.gif]

[Graphics:../Images/BezierCurveMod_gr_113.gif]

[Graphics:../Images/BezierCurveMod_gr_114.gif]


This is equivalent to the formula we wanted to establish.  

[Graphics:../Images/BezierCurveMod_gr_115.gif]

[Graphics:../Images/BezierCurveMod_gr_116.gif]


[Graphics:../Images/BezierCurveMod_gr_117.gif]
[Graphics:../Images/BezierCurveMod_gr_118.gif]

To verify we have the correct end point conditions, we can evaluate  [Graphics:../Images/BezierCurveMod_gr_119.gif]  and its derivative at [Graphics:../Images/BezierCurveMod_gr_120.gif] and [Graphics:../Images/BezierCurveMod_gr_121.gif],  and see if it has the required properties.  

[Graphics:../Images/BezierCurveMod_gr_122.gif]
[Graphics:../Images/BezierCurveMod_gr_123.gif] [Graphics:../Images/BezierCurveMod_gr_124.gif] [Graphics:../Images/BezierCurveMod_gr_125.gif] [Graphics:../Images/BezierCurveMod_gr_126.gif] [Graphics:../Images/BezierCurveMod_gr_127.gif] [Graphics:../Images/BezierCurveMod_gr_128.gif]

The function  [Graphics:../Images/BezierCurveMod_gr_129.gif]  and its derivative at [Graphics:../Images/BezierCurveMod_gr_130.gif] and [Graphics:../Images/BezierCurveMod_gr_131.gif], also have the required properties.  

 

 

 

 

 

 

 

 

 

 

 

 

(c) John H. Mathews 2003