CanvasContext.bezierCurveTo
2020-08-26 16:37 更新
解释:创建三次方贝塞尔曲线路径。
方法参数
参数名 | 属性 | 必填 | 默认值 | 说明 |
---|---|---|---|---|
cp1x | Number | 是 | 第一个贝塞尔控制点的 x 坐标 | |
cp1y | Number | 是 | 第一个贝塞尔控制点的 y 坐标 | |
cp2x | Number | 是 | 第二个贝塞尔控制点的 x 坐标 | |
cp2y | Number | 是 | 第二个贝塞尔控制点的 y 坐标 | |
x | Number | 是 | 结束点的 x 坐标 | |
y | Number | 是 | 结束点的 y 坐标 |
示例
图片示例
代码示例 1
<canvas canvas-id="myCanvas" class="myCanvas" />
Page({
onLoad() {
const canvasContext = swan.createCanvasContext('myCanvas');
// Draw quadratic curve
canvasContext.beginPath();
canvasContext.moveTo(20, 20);
canvasContext.bezierCurveTo(20, 100, 200, 100, 200, 20);
canvasContext.setStrokeStyle('black');
canvasContext.stroke();
canvasContext.draw();
}
});
代码示例 2:曲线起始点/控制点/终止点
<canvas canvas-id="myCanvas" class="myCanvas" />
Page({
onLoad() {
const ctx = swan.createCanvasContext('myCanvas')
// Draw points
ctx.beginPath()
ctx.arc(20, 20, 2, 0, 2 * Math.PI)
ctx.setFillStyle('red')
ctx.fill()
ctx.beginPath()
ctx.arc(200, 20, 2, 0, 2 * Math.PI)
ctx.setFillStyle('lightgreen')
ctx.fill()
ctx.beginPath()
ctx.arc(20, 100, 2, 0, 2 * Math.PI)
ctx.arc(200, 100, 2, 0, 2 * Math.PI)
ctx.setFillStyle('blue')
ctx.fill()
ctx.setFillStyle('black')
ctx.setFontSize(12)
// Draw guides
ctx.beginPath()
ctx.moveTo(20, 20)
ctx.lineTo(20, 100)
ctx.lineTo(150, 75)
ctx.moveTo(200, 20)
ctx.lineTo(200, 100)
ctx.lineTo(70, 75)
ctx.setStrokeStyle('#AAAAAA')
ctx.stroke()
// Draw quadratic curve
ctx.beginPath()
ctx.moveTo(20, 20)
ctx.bezierCurveTo(20, 100, 200, 100, 200, 20)
ctx.setStrokeStyle('black')
ctx.stroke()
ctx.draw()
}
});
以上内容是否对您有帮助:
更多建议: