一、任务描述

  使用Scratch编写程序,为舞台上的空心五角星涂上颜色。我们要求就是不要通过造型编辑器去填充,方法不限【可以是鼠标控制手动填充,也可以是程序自动去填充】。

  详情请访问本期挑战任务:Scratch编程任务《填充五角星》

二、任务目的

  编程作战任务我们主要是提出问题,重点并不是用多么复杂的程序去做多么复杂的事,而是充分用自己已经掌握的知识去创意,去思考,去实践,去寻找方法,从而提高自己。本文提供了5种办法,如果您还有更好的办法,欢迎与我们分享。

三、任务解说

  初级升级版:最初级的版本我们已经在作战任务中通过视频向大家展示了,相信大家只要模仿就能很容易做到。但是有的小朋友就发现了一个问题,画笔太细涂起来很费劲,如果太粗涂角的时候就出边界。于是想到了一个办法,根据需要通过一个滑杆来改变画笔的粗细,想粗就粗,想细就细。听起来似乎有点复杂,其实很简,下面来看如何操作吧:

1、在最初级的版本上进行改进:新建变量“粗细”,将画笔粗细设定的值用变量粗细代替

编程大作战任务解说:“Scratch填充五角星”

2、右键点击舞台上的变量,选择滑杆(在变量前打上对勾,变量就会显示在舞台上)

编程大作战任务解说:“Scratch填充五角星”

3、再次使用鼠标右键单击变量,设置滑杆的最大与最小值。

编程大作战任务解说:“Scratch填充五角星”

4、这样就可以通过鼠标移动滑杆来灵活设置画笔的粗细了。

编程大作战任务解说:“Scratch填充五角星”

【使用pc打开,下载程序源码】

  中级半自动版:灵活调整画笔的粗细,用鼠标涂色,虽然效率提高了不少,但是能不能让我点点鼠标就能完成的呢?于是想出了这样一个办法,当鼠标在五角星内的空白处点击一下鼠标,此时就以鼠标为中心,如同倒下了颜料一般,慢慢的向四周扩散,如果碰到了边缘,立即停止,使用图章工具完成这一部分颜色的填充,然后再改变位置点鼠标填充颜色……

编程大作战任务解说:“Scratch填充五角星”

【使用pc打开,下载程序源码】

  高级全自动版:我很懒,我不想动手去画,好吧那就把这个工作交给电脑吧。思路如下:将画笔移动五角星内部,然后让画笔向前移动画线,如果碰到边缘,画笔回到起始位置,然后旋转很小的一个角度比如“旋转角度=1度”(旋转角度大了会出现缝隙),然后再重复刚才的动作,这样重复360/旋转角度次基本就可以了。

编程大作战任务解说:“Scratch填充五角星”

【使用pc打开,下载程序源码,作者:江西-慧鱼】

  第二种自动方式大家先想象一下一个钟表如果给它的指针上涂上颜色,在它转动的时候能在表盘上留下颜色,这样指针旋转一周会发生什么,是不是把整个表盘都涂满了。这就是我们的办法,用一个角色在五角星的内部旋转一周,并留下痕迹,是不是就把五角星涂上了颜色,唯一的难度就是要让这个类似指针的角色能够伸缩(我们用放大或者缩小角色来控制)。

编程大作战任务解说:“Scratch填充五角星”

【使用pc打开,下载程序源码】

      为了增加孩子们的创造能力,中国少儿编程网(www.kidscode.cn)不定期推出一些编程小任务,孩子们完成的作品可以提交到QQ群(421293755)中或直接上传到我们的网站,由少儿编程网的专家做出评定并提供修改建议。

      由于这个不是正式比赛,鼓励孩子们发挥自己的想象力,也培养他们相互学习和分享精神,因此暂时不提供奖项设置。鼓励原创,家长可以指导孩子们一起完成,希望看到大家不一样的作品!

原创内容谢绝转载