HTML canvas bezierCurveTo() 方法

Canvas 對(duì)象參考手冊(cè) Canvas 對(duì)象

實(shí)例

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

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() 方法通過(guò)使用表示三次貝塞爾曲線的指定控制點(diǎn),向當(dāng)前路徑添加一個(gè)點(diǎn)。

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

三次貝塞爾曲線

開(kāi)始點(diǎn):
moveTo(20,20)
控制點(diǎn) 1:
bezierCurveTo(20,100,200,100,200,20)
控制點(diǎn) 2:
bezierCurveTo(20,100,200,100,200,20)
結(jié)束點(diǎn):
bezierCurveTo(20,100,200,100,200,20)

提示:請(qǐng)查看 quadraticCurveTo() 方法。它有一個(gè)控制點(diǎn),而不是兩個(gè)。


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

參數(shù)值

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


Canvas 對(duì)象參考手冊(cè) Canvas 對(duì)象