From ecbdbe0446d2b34d7c6db6fd0aefe83ecb11d810 Mon Sep 17 00:00:00 2001 From: jiaming <743192023@qq.com> Date: Thu, 13 Dec 2018 18:48:12 +0800 Subject: [PATCH] optmization --- src/plugins/canvasExtend.js | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/src/plugins/canvasExtend.js b/src/plugins/canvasExtend.js index 86be556..f5a93ce 100644 --- a/src/plugins/canvasExtend.js +++ b/src/plugins/canvasExtend.js @@ -41,16 +41,23 @@ export function drawPolyline (ctx, points, lineWidth = 2, lineColor = '#000', cl } export function drawSmoothlinePath (ctx, points, close = false, newPath = false, moveTo = false) { - if (!ctx || points.length < 3) return - const canDrawPoints = filterNull(points) + if (!ctx || canDrawPoints.length < 2) return + close && canDrawPoints.push(canDrawPoints[0]) - const lastPointIndex = canDrawPoints.length - 1 - newPath && ctx.beginPath() + if (canDrawPoints.length === 2) { + ctx.moveTo(...canDrawPoints[0]) + ctx.lineTo(...canDrawPoints[1]) + + return + } + + const lastPointIndex = canDrawPoints.length - 1 + moveTo && ctx.moveTo(...canDrawPoints[0]) canDrawPoints.forEach((t, i) =>