html5怎么使用Canvas绘制多边形?代码分享!

猿友 2021-08-03 14:56:48 浏览数 (2658)
反馈

在之前小编为大家分享过一篇有关于绘制图形的文章,那么今天小编继续和大家来讲讲在:“ html5怎么使用Canvas绘制多边形? ”这个问题的相关文章内容,希望大家收益匪浅!

前言

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循环中多一次循环lineTo()至起点
}

这就是今天有关于:“html5怎么使用Canvas绘制多边形?”这个问题的相关内容分享,更多有关于html5这方面的知识点我们都可以在W3Cschool中进行学习和了解!


0 人点赞