为了账号安全,请及时绑定邮箱和手机立即绑定

canvas时钟内容点点是一条直线?


var hourNumbers=[3,4,5,6,7,8,9,10,11,12,1,2];

ctx.font=18*rem+'px Aprial';

ctx.textAlign='center';

ctx.textBaseline='middle';

hourNumbers.forEach(function(number,i){

var rad=2*Math.PI/12*i;

var x=Math.cos(rad)*(r-30*rem);

var y=Math.sin(rad)*(r-30*rem);

ctx.fillText(number,x,y);

});

for(var i = 0;i < 60 ;i++){

var rad=2*Math.PI/60*i;

var x=Math.cos(rad)*(r-18*rem);

var y=Math.cos(rad)*(r-18*rem);

ctx.beginPath();

if(i%5==0)

{ctx.fillStyle='#000';

ctx.arc(x,y,2*rem,0,2*Math.PI,false);

ctx.fill();

}

else{

ctx.fillStyle='#ccc';

ctx.arc(x,y,2*rem,0,2*Math.PI,false);

ctx.fill();

}

ctx.fill();

}

}


正在回答

1 回答

for(var i = 0;i < 60 ;i++){

var rad=2*Math.PI/60*i;

var x=Math.cos(rad)*(r-18*rem);

var y=Math.cos(rad)*(r-18*rem);

ctx.beginPath();

------------ 分割线 -------------

上面是画刻度点的部分,y = Math.sin(rad) * (r - 18 * rem); 而不是cos

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Canvas 绘制时钟
  • 参与学习       49750    人
  • 解答问题       160    个

canvas画出漂亮的时钟,通过本教程能重新掌握一些几何知识

进入课程

canvas时钟内容点点是一条直线?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信