当前位置 : 主页 > 网络编程 > JavaScript >

创建星星的js代码

来源:互联网 收集:自由互联 发布时间:2021-06-28
star.js function drawStar(x,y,R,r) { ctx.save(); ctx.beginPath(); ctx.translate(x,y); ctx.moveTo(0,-R); ctx.lineTo(r*Math.cos(54*Math.PI/180),-r*Math.sin(54*Math.PI/180)); ctx.lineTo(R*Math.cos(18*Math.PI/180),-R*Math.sin(18*Math.PI/180));
star.js
function drawStar(x,y,R,r) {
    ctx.save();
    ctx.beginPath();
    ctx.translate(x,y);
    ctx.moveTo(0,-R);
    ctx.lineTo(r*Math.cos(54*Math.PI/180),-r*Math.sin(54*Math.PI/180));
    ctx.lineTo(R*Math.cos(18*Math.PI/180),-R*Math.sin(18*Math.PI/180));
    ctx.lineTo(r*Math.cos(18*Math.PI/180),r*Math.sin(18*Math.PI/180));
    ctx.lineTo(R*Math.cos(54*Math.PI/180),R*Math.sin(54*Math.PI/180));
    ctx.lineTo(r*Math.cos(90*Math.PI/180),r*Math.sin(90*Math.PI/180));
    ctx.lineTo(R*Math.cos(126*Math.PI/180),R*Math.sin(126*Math.PI/180));
    ctx.lineTo(r*Math.cos(162*Math.PI/180),r*Math.sin(162*Math.PI/180));
    ctx.lineTo(R*Math.cos(198*Math.PI/180),R*Math.sin(198*Math.PI/180));
    ctx.lineTo(r*Math.cos(234*Math.PI/180),r*Math.sin(234*Math.PI/180));
    ctx.lineTo(0,-R);
    // ctx.fillStyle = 'red';
    ctx.fill();
    ctx.restore();
}


//此种方法颜色随机
function drawStars(ctx,r,R,x,y) {
    ctx.beginPath();
    var str = ("000000" + (Math.random()*0x1000000<<0).toString(16)).slice(-6);
    for (var i = 0; i < 5; i++) {
        ctx.lineTo(Math.cos((18+i*72)/180*Math.PI)*R+x,
            -Math.sin((18+i*72)/180*Math.PI)*R+y);
        ctx.lineTo(Math.cos((54+i*72)/180*Math.PI)*r+x,
            -Math.sin((54+i*72)/180*Math.PI)*r+y);
    }
    ctx.fillStyle = "#"+str;
    ctx.strokeStyle = "#"+str;
    ctx.closePath();
    ctx.fill();
    ctx.stroke();
}
网友评论