微信小程序开发文档 在微信小程序绘图API中创建二次方贝塞尔曲线

2024-02-25 开发教程 微信小程序开发文档 匿名 3

canvasContext.quadraticCurveTo


定义

创建二次贝塞尔曲线路径。

Tip: 曲线的起始点为路径中前一个点。

参数

参数类型说明
cpxNumber贝塞尔控制点的x坐标
cpyNumber贝塞尔控制点的y坐标
xNumber结束点的x坐标
yNumber结束点的y坐标

例子

const ctx = wx.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.setFillStyle('blue')
ctx.fill()
ctx.setFillStyle('black')
ctx.setFontSize(12)
// Draw guides
ctx.beginPath()
ctx.moveTo(20, 20)
ctx.lineTo(20, 100)
ctx.lineTo(200, 20)
ctx.setStrokeStyle('#AAAAAA')
ctx.stroke()
// Draw quadratic curve
ctx.beginPath()
ctx.moveTo(20, 20)
ctx.quadraticCurveTo(20, 100, 200, 20)
ctx.setStrokeStyle('black')
ctx.stroke()
ctx.draw()

针对 moveTo(20, 20)quadraticCurveTo(20, 100, 200, 20)的三个关键坐标如下:

  • 红色:起始点(20, 20)
  • 蓝色:控制点(20, 100)
  • 绿色:终止点(200, 20)