您的位置:首页 > 其它

canvas学习之-七色板

2015-06-05 11:21 211 查看

效果图

html

<canvas id="canvas" class="canvas" width="600" height="600"></canvas>


css

html,body{margin: 0;padding: 0}
  .canvas{display: block; margin-left:auto;margin-right:auto;margin-top: 50px;}


javascript

var disk = [
        {
            area:[{x:0,y:0},{x:600,y:0},{x:300,y:300}],
            color:"#CBF263"
        },
        {
            area:[{x:0,y:0},{x:0,y:600},{x:300,y:300}],
            color:"#5CB6D0"
        },
        {
            area:[{x:0,y:600},{x:300,y:600},{x:150,y:450}],
            color:"#FE9CCD"
        },
        {
            area:[{x:150,y:450},{x:300,y:300},{x:450,y:450},{x:300,y:600}],
            color:"#A696C3"
        },
        {
            area:[{x:300,y:600},{x:600,y:600},{x:600,y:300}],
            color:"#FBC421"
        },
        {
            area:[{x:600,y:300},{x:600,y:0},{x:450,y:150},{x:450,y:450}],
            color:"#FF5061"
        },
        {
            area:[{x:450,y:450},{x:450,y:150},{x:300,y:300}],
            color:"#FDEA11"
        }
    ]

    window.onload = function(){
        var canvasDom = document.getElementById("canvas");

        var ctx = canvasDom.getContext("2d");

        drawDisk(disk,ctx)
    }
    function drawDisk(disk,ctx){

        for(var i = 0;i<disk.length;i++){

            ctx.beginPath();
            ctx.moveTo(disk[i].area[0].x,disk[i].area[0].y);
            for(var j = 1;j<disk[i]["area"].length;j++){
                ctx.lineTo(disk[i].area[j].x,disk[i].area[j].y);
            }
            ctx.closePath();

            ctx.fillStyle = disk[i]["color"];
            ctx.fill();
        }

    }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: