之前我们已经对Scratch程序绘制长方形、正方形以及正三角形的流程进行了详尽的解析。为了方便回顾,这里附上相关链接。
经过之前的学习,大家对于绘制基本图形的流程已经了然于胸,想必都迫不及待想要尝试绘制更复杂的图形,如正五边形、正六边形等。
实际效果图展示如下,铅笔角色在设置区被隐藏,因此看不到那支铅笔的踪影。
图示1:Scratch编程绘制正五边形的操作示例。
图示2:Scratch编程绘制正六边形的操作示例。
今天我们要深入剖析其中的规律,你会发现其中是有规律可循的。
请看下面的图形,左边展示了Scratch画正五边形的完整代码,而右边则是画正六边形的完整代码。
图示3:Scratch编程绘制正五边形和正六边形的代码示例。
我已经用红色框子标出了两者之间的差异,这些差异主要在于:1)执行的次数;2)旋转的角度。
请仔细理解下面的内容:
1. 重复执行的过程其实就是画一条边的过程,执行的次数决定了画几条边,即决定了是几边形。
小结1:几边形就意味着需要执行几次操作。
2. 从开始画到结束,所有的转向结合起来,总共转了360度。每次转向的度数可以通过360度除以边数来计算。
小结2:左转的度数等于360度除以多边形的边的数量。
结合上述两个小结,我们可以得出一个结论:只要告诉Scratch多边形的边数,程序就能自动计算出旋转的角度,从而绘制出多边形。
在上面的分析中,我们首先需要创建一个变量,这个变量就像一个盒子,我们在盒子里存放多边形的边数。其他代码可以随时查看盒子里存放的是哪个数字。
图示4:Scratch编程绘制多边形的完整代码示例。
{{设置边的数量,例如要画正三角形则设为3,画正方形则设为4,画正五边形则设为5...}}
{{重复执行的次数等于①中设定的边数。}}
{{左转的角度等于360度除以①中设定的边数。}}
现在只要设定好边数,我们就能绘制出相应的多边形,包括三角形和正方形。效果图如下:
图示5:绘制各种多边形的效果图展示。
我们加入互动代码。当点击绿色小旗运行程序时,Scratch会弹出一个输入框,请求输入多边形的边数。然后,Scratch会根据输入的边数绘制出相应的多边形(包括三角形和正方形)。
图示6:加入人机互动代码的示例。
例如,输入9,Scratch程序就会绘制一个九边形,其动态效果图如下:
图示7:人机互动操作下的动态效果图。
回顾以往教程: