2023年在微信小程序绘图API中创建二次方贝塞尔曲线
作者: --时间: 2022-09-29
阅读量:
微信小程序提供了丰富的绘图API,其中包括创建二次方贝塞尔曲线的方法——canvasContext.quadraticCurveTo。
1. 定义
canvasContext.quadraticCurveTo(cpx, cpy, x, y)方法用于创建一个二次方贝塞尔曲线路径。
注意:曲线的起始点为路径中前一个点。
2. 参数
| 参数 | 类型 | 说明 |
|---|---|---|
| cpx | Number | 贝塞尔控制点的x坐标 |
| cpy | Number | 贝塞尔控制点的y坐标 |
| x | Number | 结束点的x坐标 |
| y | Number | 结束点的y坐标 |
3. 例子
const ctx = wx.createCanvasContext('myCanvas')
// 绘制点
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.setFillStyle('blue')
ctx.fill()
ctx.setFillStyle('black')
ctx.setFontSize(12)
// 绘制辅助线
ctx.beginPath()
ctx.moveTo(20, 20)
ctx.lineTo(20, 100)
ctx.lineTo(200, 20)
ctx.setStrokeStyle('#AAAAAA')
ctx.stroke()
// 创建二次方贝塞尔曲线
ctx.beginPath()
ctx.moveTo(20, 20)
ctx.quadraticCurveTo(20, 100, 200, 20)
ctx.setStrokeStyle('black')
ctx.stroke()
ctx.draw()
上述代码中,我们通过quadraticCurveTo方法,针对moveTo(20, 20) quadraticCurveTo(20, 100, 200, 20)的三个关键坐标绘制了一条二次方贝塞尔曲线。红色点表示起始点(20, 20);蓝色点表示控制点(20, 100);绿色点表示终止点(200, 20)。
在微信小程序中,使用绘图API可以创建各种精美的效果,欢迎大家尝试。

