HTML canvas bezierCurveTo() 方法

Canvas 對象參考手冊 Canvas 對象

實例

繪制一條三次貝塞爾曲線:

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();

嘗試一下 ?

瀏覽器支持

Internet ExplorerFirefoxOperaGoogle ChromeSafari

Internet Explorer 9、Firefox、Opera、Chrome 和 Safari 支持 bezierCurveTo()方法。

注意:Internet Explorer 8 及之前的版本不支持 <canvas> 元素。


定義和用法

bezierCurveTo() 方法通過使用表示三次貝塞爾曲線的指定控制點,向當(dāng)前路徑添加一個點。

三次貝塞爾曲線需要三個點。前兩個點是用于三次貝塞爾計算中的控制點,第三個點是曲線的結(jié)束點。曲線的開始點是當(dāng)前路徑中最后一個點。如果路徑不存在,那么請使用 beginPath()moveTo() 方法來定義開始點。

三次貝塞爾曲線

開始點:
moveTo(20,20)
控制點 1:
bezierCurveTo(20,100,200,100,200,20)
控制點 2:
bezierCurveTo(20,100,200,100,200,20)
結(jié)束點:
bezierCurveTo(20,100,200,100,200,20)

提示:請查看 quadraticCurveTo() 方法。它有一個控制點,而不是兩個。


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

參數(shù)值

參數(shù)描述
cp1x第一個貝塞爾控制點的 x 坐標(biāo)。
cp1y第一個貝塞爾控制點的 y 坐標(biāo)。
cp2x第二個貝塞爾控制點的 x 坐標(biāo)。
cp2y第二個貝塞爾控制點的 y 坐標(biāo)。
x結(jié)束點的 x 坐標(biāo)。
y結(jié)束點的 y 坐標(biāo)。


Canvas 對象參考手冊 Canvas 對象