欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Canvas多边形绘制的实现方法

程序员文章站 2022-08-07 19:09:35
这篇文章主要介绍了Canvas多边形绘制的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 19-08-05...

前言

canvas绘制多变形非常简单,只要懂得canvas路径 + 简单的初中数学知识即可完成

Canvas多边形绘制的实现方法

codepen打开

解析

Canvas多边形绘制的实现方法

思路如上,非常简单,计算每一个点的位置通过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()至起点
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。