设为首页 加入收藏

TOP

浅谈使用canvas绘制多边形
2019-09-23 18:10:51 】 浏览:49
Tags:使用 canvas 绘制 多边形

本文主要使用坐标轴的使用来绘制多边形,点位则都是在y轴上寻找,这种方法能够更好的理解图形与修改。

//id为html里canvas标签的属性id;
//x,y为坐标轴的起始位置,因为canvas默认坐标轴在左上角
//color为填充图形颜色
//...side为边,如果有5个参数则绘制出来的为五边形,6个就是六边形
var draw = function(id, x, y, color, ...side){
    var c = document.getElementById(id);
    var ctx = c.getContext("2d");
    //移动起始坐标轴
    ctx.translate(x,y);
    ctx.fillStyle = color;
    //坐标轴旋转的角度
    var angle = 360/(side.length);
    ctx.beginPath();
    //第一个点位
    ctx.moveTo(0,-side[0])
    for(let i=1; i<side.length; i++){
        //旋转坐标轴
        ctx.rotate(angle*Math.PI/180);
        ctx.lineTo(0,-side[i]);
    }
    //填充
    ctx.fill();
    ctx.closePath();
}
draw('mycanvas',50,50,'#F0F0F0',50,50,50,50,50,50);
draw('mycanvas',0,0,'#E0E0E0',25,25,25,25,25,25);
draw('mycanvas',0,0,'#FF9797',25,25,20,20,40,25);

这张图片是代码执行后的结果

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇ES6入门之Proxy 下一篇vue2y引入iview,在ie11报错的解决..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目