Scratch趣味编程-钟表小程序

网友投稿 2018-12-10 14:49

先看一下展示,这个时钟做的很精美,钟表的走时跟现实的时间一样,同时,秒针分针和时针都是正常在走。秒针每走一步都发出走动的声音。到了整点的时候还是根据时间进行报时。

https://cdn.china-scratch.com/timg/181212/14492233T-0.jpg

让我们来看看程序的细节:

首先是钟的背景。这个背景素材是小编在别人的程序里直接下的。大家也可以网上搜索一下。(关于图片素材大家可以注意搜索后缀是.svg的素材,这类素材是矢量图,导入Scratch后可以放大缩小而不会失真。如果是普通图片,放大后就有可能会失真。)大家可以直接把这个图下载下来做背景。

https://cdn.china-scratch.com/timg/181212/1449224611-1.jpg

程序部分为三个角色,一个秒针:second,分针:minute,时针:hour。

https://cdn.china-scratch.com/timg/181212/1449231962-2.jpghttps://cdn.china-scratch.com/timg/181212/144924C20-3.jpghttps://cdn.china-scratch.com/timg/181212/144924C39-4.jpg

看一下这三个角色的程序

秒 针

https://cdn.china-scratch.com/timg/181212/1449251310-5.jpg

大家可以用侦测里面的目前的时间获取当前的时间数字。

https://cdn.china-scratch.com/timg/181212/144925GF-6.jpg

这里面有两个关键的地方:

1:秒针的指向,秒针转一圈360度,转一圈需要60秒,所以每秒走6度。那么对应现实时间的秒数乘以6就是秒针应该指向的方向。

2:秒针走动的声音,需要做一个判断,要判断当秒针发生移动的时候才发声音,所以我们用了一个变量来记录秒。当目前的秒变到了下一秒,这时候就会播放声音。(如果不加判断,直接把播放声音放在循环里,大家可以试试看会发生什么效果。)

分 针

https://cdn.china-scratch.com/timg/181212/1449255V9-7.jpg

分针的程序最简单,就是确认一下当前是几分钟,然后乘以6就是分针的指向。

时 针

https://cdn.china-scratch.com/timg/181212/1449256112-8.jpg

时针相对复杂一些,因为时针不是一个小时才跳一次,而是不断在改变。我们假设每一分钟时针都在发生轻微的位移。那么时针的指向该怎么做呢?

1:首先确定时针的位置,第一步先看当前是几点,然后乘以30,那么就是时针在准点时对应的指向。

2:然后再看现在是几分,时针转一圈一共需要12小时*60分钟=720分钟。所以每分钟时针走0.5度。右转当前的分钟*0.5度。

https://cdn.china-scratch.com/timg/181212/1449252936-9.jpg

循环里的程序就是每隔60秒,时针走0.5度。

下面这段程序是报时:

https://cdn.china-scratch.com/timg/181212/14492543C-10.jpg

1:报时发生在分针和秒钟同时为零的时候,所以做一个判断。

2:我们只想敲12下钟声以内,也就是当现在是18:00的时候就只敲6下。所以我们设置了个12hour的变量,来根据当前的时间计算要敲几下钟。

3:需要敲几下就循环几次。

--end--

声明:本文章由网友投稿作为教育分享用途,如有侵权原作者可通过邮件及时和我们联系删除:freemanzk@qq.com