序言
Canvas绘图多形变十分简易,要是晓得Canvas相对路径 + 简易的中学数学课专业知识便可进行
CodePen开启
分析
思路如上,十分简易,测算每个点的部位根据lineTo()绘图相对路径便可
关键编码分析以下(或在CodePen中查询):
function drawPolygonPath(sideNum, radius, originX, originY, ctx){
ctx.beginPath();
const unitAngle = Math.PI * 2 / sideNum; //测算模块角度
let angle = 0; //原始角度
let xLength, yLength;
// ctx.moveTo(originX, originY);
for(let i = 0; i < sideNum; i++){ //遍历测算点,并lineTo()绘图相对路径
xLength = radius * Math.cos(angle);
yLength = radius * Math.sin(angle);
ctx.lineTo(originX + xLength, originY - yLength);//绘图相对路径
angle += unitAngle;
}
ctx.closePath();//闭合相对路径,也可在for循环系统中多1次循环系统lineTo()至起始点
}
以上便是本文的所有內容,期待对大伙儿的学习培训有一定的协助,也期待大伙儿多多适用脚本制作之家。