引言
通过“趣学篇”的学习,你开发了几个小游戏和动画作品,对 Scratch 这个强大的编程工具有了一定的熟悉度——就像得到了一个超级英雄才能拥有的神器,你一定想知道这把“神器”能做什么吧—— Scratch 能做的事情实在太多了,在接下来的妙用篇,我精选了一些Scratch在学习和生活中的应用案例,这些案例中有美不胜收的诗词动画,也有妙趣横生的经典数学,有时间管理、英语会话的实用小工具,也有答题、赛车类的小游戏。通过这些案例的学习,你将学会用编程的语言去表达自己的想法和创意,你将学会用编程的思维去解决学习和生活中遇到的具体问题,你将进一步体验到编程独有的创造性快乐,你将感叹——生活中原来到处是编程的创意呀!
知:传统文化中的梅花
小朋友,你最喜欢哪种花呢?是雍容华贵的牡丹,还是亭亭玉立的水仙?是“我花开后百花杀”的菊花,还是“出污泥而不染”的莲花?
每一种花在我们的传统文化中都有它独特的文化内涵,比如菊花代表隐士,莲花代表君子,兰花是空谷佳人,梅花是雪中高士。今天我们要谈的,就是“雪中高士”——梅花。梅花是我们中国的十大名花之首,与兰花、竹子、菊花一起列为四君子,与松、竹并称为“岁寒三友”。在严寒中,梅开百花之先,独天下而春,所以在中国传统文化中,梅花往往被用来代表高洁、坚强、谦虚的品格,激励人们立志奋发——“宝剑锋从磨砺出,梅花香自苦寒来”。
古往今来的艺术家们创作了不计其数的诗词和绘画作品,来表现梅花、赞美梅花、歌颂梅花。北宋诗人林逋的《山园小梅》诗中“疏影横斜水清浅,暗香浮动月黄昏”两句,写照传神、言近旨远,被誉为千古咏梅绝唱;现代毛主席的《卜算子·咏梅》词作中最后两句——“待到山花烂漫时,她在丛中笑”,将梅花的自然美与人的德善美有机地融为一,达到了“天人合一”的至高境界。
上面提到这两首关于梅花的诗词,你可能还没有学过。但下面这首来自北宋王安石的《梅花》,就来自我们小学二年级的语文课本——
墙角数枝梅,凌寒独自开。
遥知不是雪,为有暗香来。
这首诗仅用了20个字,就形象地刻画了早春梅花的神韵和香色,表现出梅花独步早春,纯洁无瑕,不畏严寒的坚强性格和顽强的生命力。作者还将自己的心境寄托于品质高洁的梅花,语言朴素,意境深远。这次我们就以它为主题,创作一个动画作品。
思:程序设计
要表现诗中梅花的品格,最好的方法就是用雪来映衬。我们选择一幅与梅花有关的背景图,加入大雪纷飞的动画效果和悠扬动听的音乐,就可以成为优美的动画作品。那么大雪纷飞的效果怎么实现?很简单,利用Scratch为我们提供的“克隆”功能,克隆我们绘制好的雪花,让克隆出来的雪花在屏幕上方随机位置出现并下落(Y坐标减小),直到碰到屏幕边缘消失就可以了。
我们用思维导图的形式分解一下程序的结构。思维导图又称为“脑图”,是一种用来表达发散性思维的图形思维工具,很适合用来梳理一个 Scratch 程序中舞台、角色之间的逻辑关系。通过前面章节的学习,你可能已经发现,Scratch 的编程是面向“角色”的,只要把各个角色的处理程序写好,程序就完成了。因此,你可以通过思维导图来设计角色和它们的行为,也可以在编程过程中把思维导图作为参考对照。
在以后的课程中,我们会为每个作品配备思维导图,帮助你整理思路。
行:编程实现
1、打开Scratch 3.0,删除小猫角色,并导入一张深色的、带有梅花的雪景图片(你可以直接使用本书附带的图片资源)。
2、本节最重要的角色是“雪花”,你可以去网上找一个现成的雪花素材导入,但我更推荐的方法是你自己来画一朵雪花。雪花看上去线条很复杂,但其实它是一种有规律的图形,这就为我们绘制带来了便利性,只要很简单的几步,你就能画出一朵漂亮的雪花:
第一步:进入绘制角色界面,选择轮廓色为白色(饱和度0,亮度100),设置轮廓宽度为25,从画布的中心点向上画一条线段,然后在两侧画四条短的分支线,如果你希望左右完全对称,可以先画完左边的分支,执行复制、粘贴操作,选中复制出来的图形,再使用工具栏中的“水平翻转”就可以了。最终把它们组合成下面这个简单的图形,这是雪花的一个“花瓣”:
第二步,用鼠标拖动,选中第一步画出的整体图形,复制一份,旋转成第二个“花瓣”:
第三步,选择第二步中画的“花瓣”,复制并水平翻转,移动到左侧,形成第三个“花瓣”:
第四步,现在雪花的上一半已经画好了,选中所有图形,复制并执行“垂直翻转”后移动到下面,注意要与图形上半部分对称:
第五步,最后用画圆工具,在六个“花瓣”汇集的地方画一个实心的圆形(填充白色),一朵漂亮的雪花就完成了。
3、回到代码界面,为雪花设置属性,让它隐藏起来:
4、为雪花编写代码。点击绿旗时,程序会每2秒生成一批(10份)雪花的克隆体。这些克隆体启动时,会先把自己的大小设置为1-10之间的随机数(你可以选择自己喜欢的大小范围),再把位置移动到屏幕上方的区域(X坐标值为-240至240,Y坐标值设置为靠近舞台上边缘的一个范围,我这里选择的是102~175)后显示,随后就开始重复执行旋转下落的操作,直到碰到舞台边缘后停止。为了有一种雪花在“慢慢融化”的感觉,我们等待5秒后再删除这个克隆体。
5、这时点击绿旗运行,你应该能看到漫天飞雪的效果了。不过我们的诗句还没写上呢。绘制一个新角色,用添加文字工具把诗句添加到中心区域:
6、绘制好所有的角色,调整大小并放到合适的位置:
7、切换到雪花角色的“声音”标签,上传背景音乐。我选择的是“高山流水”,你也可以选择其它自己喜欢的音乐:
8、切换到雪花角色的代码标签,给它添加播放背景音乐的代码:
9、运行程序,发现雪花飘落的过程有点不太对劲,它被文字挡住了。我们再给克隆体加一行代码,让它把自己移到最前面:
10、大功告成!你可以全屏、点击绿旗,开始欣赏你自己的作品了。在优美的音乐声中,看着片片雪花在空中飞舞着落下,是不是一下子体会到了“诗情画意”?
悟:总结与拓展
本节我们实现了一个诗词类的动画作品。古人说“诗以言志”,诗是用于抒发思想感情的,是诗人心灵世界的呈现。我们学习诗词时应当结合创作背景,体会作者想要营造的某种“意境”。如果你能与作者心灵相契,你就能用自己掌握的 Scratch ——这也是一种语言,一种表达工具,把它呈现出来,绘画也好、摄影也好、编程也好,能将自己的思想感情倾注在作品中,这就是一种境界。
试着从你的语文课本中找一首古诗,认真体会它表现的意境,开发一个你自己的创意作品吧!
“就像得到了一个超级英雄才能拥有的神器” 我:”这神器有点费肝” “易语言”路过……