论文部分内容阅读
這次我们通过用Scratch做个时钟来学习和掌握时间积木的用法,理解时间换算和角度换算关系。
1) 舞台背景选择:选取一个时钟表盘作为背景舞台,请通过网络搜索图片“时钟表盘 卡通”下载一个合适的表盘,导入作为舞台背景图片(如图1)。
2) 角色选择:时钟案例里面的时针、分针和秒针通过绘制角色来完成,用圆和长方形比较容易绘制,注意角色中心点在圆心位置,这样指针才能正常旋转。如图2绘制的秒针图案。
3) 流程设计
当绿旗被点击,时钟案例里面的秒针、分针和时针同时运行,呈现的时间与当前电脑的时间一致。
与时间相关的积木在侦测模块组里面,主要是和时间相关的动作,包括计时器,2000年至今的天数,当前时间的年、月、日、时、分、秒、星期等,如图3。
每个积木具体的含义如图4所列:
运用与时间相关的积木,我们可以来完成时钟程序的编写。
1) 时钟指针转动角度
在编写时钟程序之前,需要对时钟指针的转动角度和方向进行一个分析。在这里,需要结合数学中的角度知识。
我们可以将时钟表盘看成一个圆,一周的角度就是360度。如果秒针转动一圈,那么就是转动了360度。由此可知:
秒针指针1秒钟转过360÷60=6度
以此类推,我们就可以推算出:
1分钟分针指针转动360÷60=6度
1小时时针指针转动360÷12=30度
2) 指针转动方向
时钟指针转动方向由它的转动角度决定。
a. 秒针的转动方向:
我们已经知道了秒针指针1秒钟转6度,当前时间是多少秒就要面向转动多少个6度。所以,结合运动模块的“面向90度方向”和侦测模块的“当前的时间‘秒’”,我们可以确定秒针的方向如图5。
再加上秒针是每隔1秒转动一下,系统需要一直重复检测当前时间。所以,秒针完整的脚本如图6。
b. 分针的转动方向:
1分钟分针指针转过6度,当前时间是多少分就要面向转动多少个6度。所以,结合运动模块的的“面向90度方向”和侦测模块“当前的时间‘分’”,我们可以得到分针的方向是“面向‘当前的时间分*6’度方向”。但是,我们还想要将分针的转动角度精确到每秒钟的转动角度,即是需要加上一秒分针的转动角度。
分针60秒转过6度,那么1秒就是6÷60=0.1度,即目前时间是多少秒,分针就再转动多少个0.1度。由于要精确到间隔1秒,加上系统重复一直检测当前时间,所以,分针完整的脚本如图7。
c. 时针的转动方向:
时针指针转一圈360度经过了12小时,1小时时针指针转动30度。由于时针每秒钟转过的角度太小,我们只需要将时针的角度变化精确到每分钟的转动角度。时针每60分钟转过30度,那么每分钟就转过30÷60=0.5度,即目前时间是多少分,时针就再加多少个0.5度。由于需要精确到分,所以间隔时间就是60秒,加上系统要重复一直检测当前时间,所以,时针完整的脚本如图8。
3) 数字时间的显示
用连接积木把时、分、秒及冒号相连,用“思考”的方式展现出来就可以显示当前时间的数字形式了。
完成后的时钟如图10。
1. 脚本规划与流程设计
1) 舞台背景选择:选取一个时钟表盘作为背景舞台,请通过网络搜索图片“时钟表盘 卡通”下载一个合适的表盘,导入作为舞台背景图片(如图1)。
2) 角色选择:时钟案例里面的时针、分针和秒针通过绘制角色来完成,用圆和长方形比较容易绘制,注意角色中心点在圆心位置,这样指针才能正常旋转。如图2绘制的秒针图案。
3) 流程设计
当绿旗被点击,时钟案例里面的秒针、分针和时针同时运行,呈现的时间与当前电脑的时间一致。
2. 与时间相关的积木
与时间相关的积木在侦测模块组里面,主要是和时间相关的动作,包括计时器,2000年至今的天数,当前时间的年、月、日、时、分、秒、星期等,如图3。
每个积木具体的含义如图4所列:
3. 编写时钟程序
运用与时间相关的积木,我们可以来完成时钟程序的编写。
1) 时钟指针转动角度
在编写时钟程序之前,需要对时钟指针的转动角度和方向进行一个分析。在这里,需要结合数学中的角度知识。
我们可以将时钟表盘看成一个圆,一周的角度就是360度。如果秒针转动一圈,那么就是转动了360度。由此可知:
秒针指针1秒钟转过360÷60=6度
以此类推,我们就可以推算出:
1分钟分针指针转动360÷60=6度
1小时时针指针转动360÷12=30度
2) 指针转动方向
时钟指针转动方向由它的转动角度决定。
a. 秒针的转动方向:
我们已经知道了秒针指针1秒钟转6度,当前时间是多少秒就要面向转动多少个6度。所以,结合运动模块的“面向90度方向”和侦测模块的“当前的时间‘秒’”,我们可以确定秒针的方向如图5。
再加上秒针是每隔1秒转动一下,系统需要一直重复检测当前时间。所以,秒针完整的脚本如图6。
b. 分针的转动方向:
1分钟分针指针转过6度,当前时间是多少分就要面向转动多少个6度。所以,结合运动模块的的“面向90度方向”和侦测模块“当前的时间‘分’”,我们可以得到分针的方向是“面向‘当前的时间分*6’度方向”。但是,我们还想要将分针的转动角度精确到每秒钟的转动角度,即是需要加上一秒分针的转动角度。
分针60秒转过6度,那么1秒就是6÷60=0.1度,即目前时间是多少秒,分针就再转动多少个0.1度。由于要精确到间隔1秒,加上系统重复一直检测当前时间,所以,分针完整的脚本如图7。
c. 时针的转动方向:
时针指针转一圈360度经过了12小时,1小时时针指针转动30度。由于时针每秒钟转过的角度太小,我们只需要将时针的角度变化精确到每分钟的转动角度。时针每60分钟转过30度,那么每分钟就转过30÷60=0.5度,即目前时间是多少分,时针就再加多少个0.5度。由于需要精确到分,所以间隔时间就是60秒,加上系统要重复一直检测当前时间,所以,时针完整的脚本如图8。
3) 数字时间的显示
用连接积木把时、分、秒及冒号相连,用“思考”的方式展现出来就可以显示当前时间的数字形式了。
完成后的时钟如图10。