UNPKG

@visactor/vrender-core

Version:
22 lines (18 loc) 1.11 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: !0 }), exports.drawSegItem = void 0; const cubic_bezier_1 = require("./segment/curve/cubic-bezier"); function drawSegItem(ctx, curve, endPercent, params) { if (!curve.p1) return; const {offsetX: offsetX = 0, offsetY: offsetY = 0, offsetZ: offsetZ = 0} = params || {}; if (1 === endPercent) curve.p2 && curve.p3 ? ctx.bezierCurveTo(offsetX + curve.p1.x, offsetY + curve.p1.y, offsetX + curve.p2.x, offsetY + curve.p2.y, offsetX + curve.p3.x, offsetY + curve.p3.y, offsetZ) : ctx.lineTo(offsetX + curve.p1.x, offsetY + curve.p1.y, offsetZ); else if (curve.p2 && curve.p3) { const [curve1] = (0, cubic_bezier_1.divideCubic)(curve, endPercent); ctx.bezierCurveTo(offsetX + curve1.p1.x, offsetY + curve1.p1.y, offsetX + curve1.p2.x, offsetY + curve1.p2.y, offsetX + curve1.p3.x, offsetY + curve1.p3.y, offsetZ); } else { const p = curve.getPointAt(endPercent); ctx.lineTo(offsetX + p.x, offsetY + p.y, offsetZ); } } exports.drawSegItem = drawSegItem; //# sourceMappingURL=render-utils.js.map