微信小程序API繪圖canvasContext,創(chuàng)建三次方貝塞爾曲線路徑
2017-12-22
導(dǎo)讀:繪圖接口和方法 canvasContext.bezierCurveTo 定義 創(chuàng)建三次方貝塞爾曲線路徑。 Tip : 曲線的起始點為路徑中前一個點。 參數(shù) 參數(shù) 類型 說明 cp1x Number 第一個貝塞爾控制點的 x 坐標(biāo) cp1y Number...
canvasContext.bezierCurveTo
定義
創(chuàng)建三次方貝塞爾曲線路徑。
Tip: 曲線的起始點為路徑中前一個點。
參數(shù)
參數(shù) | 類型 | 說明 |
---|---|---|
cp1x | Number | 第一個貝塞爾控制點的 x 坐標(biāo) |
cp1y | Number | 第一個貝塞爾控制點的 y 坐標(biāo) |
cp2x | Number | 第二個貝塞爾控制點的 x 坐標(biāo) |
cp2y | Number | 第二個貝塞爾控制點的 y 坐標(biāo) |
x | Number | 結(jié)束點的 x 坐標(biāo) |
y | Number | 結(jié)束點的 y 坐標(biāo) |
例子
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.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()
針對 moveTo(20, 20)
bezierCurveTo(20, 100, 200, 100, 200, 20)
的三個關(guān)鍵坐標(biāo)如下:
- 紅色:起始點(20, 20)
- 藍(lán)色:兩個控制點(20, 100) (200, 100)
- 綠色:終止點(200, 20)
第二部分:如何開通一個小商店