[导读]:超平老师的《Scratch蓝桥杯真题解析100讲》已经全部完成,后续会不定期解读蓝桥真题,这是Scratch蓝桥真题解析教程系列第210讲。
第16届蓝桥第2次STEMA测评已于2024年11月24日落下帷幕,编程题一共有5题(初级组只有前4道编程题),分别如下:
行走的图形,本题是2024年11月24日举行的蓝桥STEMA测评Scratch编程中级组编程第5题,初级组没有此题。题目要求编程创作行走的图形作品,运行程序,先绘制一个小三角形,1秒后绘制3个三角形,再过1秒绘制一个彩色圆环,通过滑杆控制图形旋转以及向右移动。
先来看看题目的要求吧。
一.题目说明
编程实现:
行走的图形。
具体要求:
1). 点击绿旗,在舞台上出现滑杆形式的变量 n,取值范围为 0、1、2,默认值为 0,如图所示;
2). 1 秒后,在舞台的白色区域左侧绘制出一个蓝色等边三角形(边长为 30),如图
所示;
3). 1 秒后,呈现 3 个大小相同的等边三角形,3 个三角形均匀分布,且有一个共用
顶点,如图所示;
4). 1 秒后,以 3 个三角形的共用顶点为圆心绘制出一个圆,圆由四个颜色不同、长
度相同的弧线组成,且三角形都在圆内,如图所示;
5). 拖动滑杆改变变量 n 的值,当值为 0 时,整个图形不旋转,当值为 1 时,整个图形顺时针缓慢旋转,当值为 2 时,整个图形顺时针快速旋转;(参考视频)
6). 拖动滑杆改变变量 n 的值,当值为 0 时,整个图形不移动,当值为 1 时,整个
图形缓慢向右水平移动,当值为 2 时,整个图形快速向右水平移动;(参考视频)
7). 整个图形到达白色区域的最右侧时停止旋转和移动,如图所示。
二.思路分析
本题只有1个画笔角色,如图所示:
很显然,这是一道画笔题目,考查的知识点包括画笔技巧、自制积木和运动编程等。
本作品的要求和10月份stema测评的最后一题颇为相似,都是使用画笔绘制图形,然后通过变量控制图形的旋转,你可以参考这篇教程,《旋转的图形-第16届蓝桥第1次STEMA测评Scratch真题第5题》。
对于本作品,我们需要用到如下几个核心技巧:
-
360万能公式模型;
-
中心法;
-
先擦再画;
-
不刷新的自制积木;
-
复原模型;
360万能公式模型已经介绍过很多次了,如下:
它是用来绘制正多边形的,这里的三角形和圆环都需要使用这个模型。重点是模型的嵌套用法,例如,把1个小三角形当成是一条边,那么3个小三角形就相当于是1个三角形。
本题中的彩色圆环是由4个1/4圆弧构成的,
在Scratch编程中,使用画笔绘制出来的图形是不能移动的,所谓的移动和旋转只不过是先擦除再重新绘制,并不断地重复这个过程。
要让图形旋转起来,我们可以让画笔每次左/右转一个角度,再重新绘制图形。同理,要让图形前进,其实就是让画笔移动一定距离,再重新绘制图形。
但是,这里有一个非常重要的细节,就是对于每一次绘制,要确保在绘制之前和绘制完成后的状态是完全一样的,包括方向和坐标,超平老师把这个称之为复原模型。
魔方应该很熟悉吧,就算你没有玩过,也肯定见过😄。
魔方有6个面,初始状态下,同一个面的各个方块的颜色相同,面与面之间的颜色都不相同,魔方复原是指将一个被打乱的魔方恢复到初始状态的过程。
我们在绘制图形时也要遵循复原原则,绘制之前,画笔处于哪个位置,其方向是多少,我们在绘制完成之后,也要回到这个位置和方向。
仔细观察题目给出的三角形效果,可以发现,第1个三角形的三条边没有面向90度的,离90度最小的是面向30度(90 - 60 = 30)度。
因此,如果画笔的初始方向是90度,那么需要左转60度,才能画出如上图所示的蓝色三角形效果。
第一次只需要绘制1个三角形,可以直接设置为面向30度。
后续需要一次性绘制3个三角形,我们可以将画笔设置为我们熟悉的90度方向,然后左转60度,绘制完成后,再右转60度,恢复到初始方向。
思路有了,接下来,我们就进入具体的编程实现环节。
三.编程实现
根据上面的思路分析,我们分4步来编写程序:
-
绘制1个三角形
-
绘制3个三角形
-
绘制彩色圆环
-
旋转和移动
1. 绘制1个三角形
为了简化代码,我们定义绘制三角形的自制积木如下:
代码比较简单,说明4点:
1). 第一次绘制三角形,不需要瞬间绘制,在定义自制积木的时候,不用勾选“运行时不刷新屏幕”选项;
2). 三角形的颜色要设置好,确保任何时画出来的三角形都是蓝色的;
3). 在绘制三角形的时候,需要左转120度(360 / 3 = 120),由于是从面向30度开始画的,所以是左转;
4). 在绘制三角形中,不要设置方向;
2. 绘制3个三角形
定义自制积木“3个三角形”,代码如下:
代码比较简单,说明两点:
1). 在定义自制积木时,需要勾选“运行时不刷新屏幕”选项,确保瞬间绘制好3个三角形;
2). 根据前面的思路分析,在绘制之前左转60度,绘制完成后右转60度,可以这样确保画笔可以回到初始方向;
3. 绘制彩色圆环
定义“彩色圆环”自制积木如下:
代码稍微有点多,说明4点:
1). 这里使用了两层循环,内存循环使用中心法来绘制1/4圆弧,外层循环则用于绘制4个1/4圆弧;
2). 中心法的核心思想是从圆心位置开始移动一定距离(这里是50步),绘制一个点,然后退回到圆心位置(即-50步),然后右转1度,重复这个过程;
3). 为了确保颜色不变,每次都是先将颜色设置为红色,绘制一个1/4圆弧后,将颜色增加25;
4). 创建自制积木时,需要勾选“运行时不刷新屏幕”选项;
4. 旋转和移动
创建一个变量“n”,更改为滑杆模式,并设置其范围为0~2。
在绿旗下编写代码如下:
代码比较长,说明4点:
1). 绘制单个的三角形时,直接将方向设置为面向30度;
2). 1秒后,将单个的三角形擦除,一次性绘制3个三角形,注意此时需要将画笔的初始方向设置为90度;
3). 再等1秒,绘制彩色圆环;
4). 重复擦除和绘制动作,同时右转n度、将x坐标增加n,循环的条件需要根据自己的画笔角色来确定,注意画笔角色尽量设置得小一点,否则图形有可能无法到达右侧边缘;
至此,整个作品就创作好了。
四.总结与思考
本题是中级组编程部分第5题,分数为80分,积木块数量48个左右,涉及到的知识点主要包括:
-
滑杆变量;
-
画笔技巧;
-
运动编程;
-
自制积木;
-
嵌套循环;
这是stema测评的第5题,也是中级组最后一题,初级组没有此题,难度中等,创作时间约25分钟左右,本作品的难点是如何让图形旋转和移动起来。
本题是典型的画笔题目,针对画笔题目,只需要掌握几个核心模型即可,包括:
-
360万能公式;
-
中心法;
-
先擦再画;
-
复原模型;
一旦你熟练掌握了这几个模型,画图的题目就变得非常简单了,在之前的STEMA测评和蓝桥杯历届真题中,多次出现过这类题目,解题思路和实现方式都差不多。
和本题类似的题目有:
如果你觉得文章对你有帮助,别忘了点赞和转发,予人玫瑰,手有余香😄