超级实用的动态时钟。

canvas

绘制时钟

时钟动态效果的实现基于canvas画布的重绘,也就是说每秒都要在canvas画布上重新绘画一遍图形,在配合定时器即可实现动态效果。而实现此时钟主要有两个步骤,1是表盘的绘制,2是指针的绘制。

绘制时钟表盘

时钟表盘的刻度分为两种,一种是时刻度,一种是秒或分刻度。

  1. 先使用cnavas创建空心的圆 在这里插入图片描述
    2,使用canvas中的旋转和画布状态来刻画表盘的时刻度。只需要每次都在表盘中心也就是圆心的正上方绘制一个刻度,然后将canvas画布旋转30deg重复此操作。
    0deg
			cxt.save()
            // 重设画布的原点,以画布中心为原点
            cxt.translate(250,250)
            cxt.lineWidth = 5;
            // 设置旋转角度 参数是弧度Math.PI / 180  * 30
            cxt.rotate(Math.PI / 180 * 30 * 0)//第一次画布不旋转,随后每次旋转30deg
            cxt.beginPath()
            cxt.moveTo(0,-180)
            cxt.lineTo(0,-195)
            cxt.stroke()
            cxt.closePath()
            cxt.restore()

上图效果是当canvas画布不旋转时绘画的第一个刻度,随后每绘画一个刻度完成,便需要将画布旋转30deg,然后在绘制刻度,而此操作需要重复多次,所以只需将以上代码放入循环之中便可。
在这里插入图片描述

		// 刻度,利用旋转
        // 时刻度
        for(var i = 0;i < 12;i++){
   
            
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值