Latest web development tutorials
 

HTML canvas bezierCurveTo() Method

< Canvas Object

Example

Draw a cubic Bezier curve:

YourbrowserdoesnotsupporttheHTML5canvastag.

JavaScript:

var c=document.getElementById("myCanvas");
var ctx=c.getContext("2d");
ctx.beginPath();
ctx.moveTo(20,20);
ctx.bezierCurveTo(20,100,200,100,200,20);
ctx.stroke();
Try it Yourself »

Browser Support

The numbers in the table specify the first browser version that fully supports the method.

Method
bezierCurveTo() 4.0 9.0 3.6 4.0 10.1

Definition and Usage

The bezierCurveTo() method adds a point to the current path by using the specified control points that represent a cubic Bezier curve.

A cubic bezier curve requires three points. The first two points are control points that are used in the cubic Bezier calculation and the last point is the ending point for the curve.  The starting point for the curve is the last point in the current path. If a path does not exist, use the beginPath() and moveTo() methods to define a starting point.

A cubic bezier curve

Start point
moveTo(20,20)
Control point 1
bezierCurveTo(20,100,200,100,200,20)
Control point 2
bezierCurveTo(20,100,200,100,200,20)
End point
bezierCurveTo(20,100,200,100,200,20)

Tip: Check out the quadraticCurveTo() method. It has one control point instead of two.


JavaScript syntax: context.bezierCurveTo(cp1x,cp1y,cp2x,cp2y,x,y);

Parameter Values

Parameter Description Play it
cp1x The x-coordinate of the first Bezier control point Play it »
cp1y The y-coordinate of the first Bezier control point Play it »
cp2x The x-coordinate of the second Bezier control point Play it »
cp2y The y-coordinate of the second Bezier control point Play it »
x The x-coordinate of the ending point Play it »
y The y-coordinate of the ending point Play it »

< Canvas Object