学习目标
知识与技能目标:
a) 熟悉Scratch中常用的画笔类积木的效果和用法;
b) 掌握Scratch中跨角色传递消息、实现控制的方法。
过程与方法目标:
a) 通过为画笔设置不同粗细和颜色属性掌握画笔类常用积木的作用;
b) 通过实现点击粗细和颜色角色改变画笔角色的属性的过程掌握消息广播的用法。
程序目标
启动程序后,画笔随着鼠标运动,按下鼠标后画笔能在画板上留下痕迹,选择不同的粗细或颜色可以改变画笔的粗细和颜色属性。
程序流程图
画笔角色流程图:
颜色角色/粗细角色流程图:
橡皮擦角色流程图
背景和角色
任务拆解
任务一:妙笔生花
日常程序初始化:
(1)点击绿旗之后要保证画笔始终在所有角色的最上方,故要用到【外观】中的【移到最上层】;
(2)还要保证画笔始终是跟着鼠标运动的,故要用到【运动】中【移到‘鼠标指针’】和【重复执行】。
在这里我们总结出画笔类积木的第一个规律:
当鼠标按下并移动时,画笔将出现并跟随鼠标运动,同时能够在舞台上绘制线条。
(1)根据流程图:画笔跟随鼠标运动,当点击鼠标时能【落笔】绘制线条(本质是绘制出鼠标的运动坐标轨迹);松开鼠标时会【抬笔】,此时不再画线。
(2)为了让初始启动程序时画笔笔刷的颜色和粗细保持一致,我们也要对画笔的粗细和颜色做初始化:
在这里我们总结出画笔类积木的第二个规律:
画笔类常用积木及功能如下:
我们得到最终画笔角色的初始化脚本:
任务二:魔法画笔
(1)选择笔刷颜色后,画笔颜色会切换成选择的颜色;
(2)选择笔刷粗细后,画线宽度会切换成选择的宽度;
(3)选择橡皮后,画笔会变成橡皮擦掉多余的线。
我们可以联想到在《运算帮帮帮》项目中,点击按钮角色,人物角色会说话,这种跨角色的控制我们用【消息广播】来实现:
2.接下来思考以下问题:
A:谁广播消息?什么时候广播?广播什么消息?
B:谁接收消息?接收消息后执行什么动作?
C:当接收到橡皮擦消息时,画笔造型属性有什么变化?如何实现?
综上:我们得到画笔角色的脚本如下:
颜色/笔刷角色以红色角色/笔刷1角色为例、橡皮擦角色脚本如下:
https://img-blog.csdnimg.cn/20190928195356629.png
难点详解
难点一:画笔造型中心的设置
设置完脚本之后画笔角色如果无法在画布上画线,可以先检查一下画笔造型的中心。在此程序中,落笔的过程其实是记录鼠标的运动痕迹,为了更逼真我们把画笔的造型中心设置在笔尖,要注意画笔造型不能挡住造型中心点。(同样画笔造型2的中心点也要注意此点)
难点二:画笔造型的切换问题
很多人在做这个项目的一开始把精力花费如何设置橡皮擦角色的脚本,来达到点击橡皮擦角色,橡皮擦会跟随鼠标运动的目的。
···在这里,本人为画笔角色设置了两个造型,造型1为画笔,造型2为橡皮擦。初始化时为造型1,点击橡皮擦角色后切换为造型2,点击笔刷粗细和颜色角色又切换为造型1。
拓展任务:力争上游
再添加几种你喜欢的颜色;
设置多种橡皮擦的粗细;
实现让画笔只在白色区域留下痕迹;(提示:控制坐标范围)
素材资源
注:项目的样例程序本次免费分享,如果觉得有用,点个赞或留个评论吧~
网盘链接:
链接:https://pan.baidu.com/s/11jCguJIWUXCDoHFk_BlvqA
提取码:l8tr
往期推荐
送书福利|《Scratch3.0少儿编程一玩就会》等你来拿!