蜘蛛结网 ( 八边形网 )
这篇文章会介绍,如何在 Scratch 里使用画笔、函数、重复无限次、数学计算、三角函数...等积木,实作蜘蛛结网的动画与绘图效果 ( 蜘蛛会在画面中吐丝结网,结出一个八边形的蜘蛛网 )。
角色设定
在角色编辑区,删除猫咪角色,加入“瓢虫”角色,当作蜘蛛使用 ( 参考:Scratch 角色设定 )。
积木程序原理
点击蜘蛛角色,从左侧积木清单里,新增一个名为“放射线”的函数,勾选“执行完毕再更新画面”,透过这个函数,先绘制蜘蛛网的八条放射状主线。
加入“扩充功能”的画笔,编辑“放射线”函数内容:
- 画出“中间下到上”的一条线 (0, -180) 到 (0, 180)。
- 画出“右上到左下”的一条线 (180, 180) 到 (-180, -180)。
- 画出“中间右到左”的一条线 (240, 0) 到 (-240, 0)。
- 画出“右下到左上”的一条线 (180, -180) 到 (-180, 180)。
注意,两条斜线使用 x 座标为 180 和 -180,让交错后变成正方形,方便使用“正八边形”来绘制蜘蛛网。
编辑点击绿旗时,清空笔迹和停笔,设定笔画的颜色和粗细,执行“放射线”函数后,舞台上就会出现四条交错的放射线。
按照下图的公式,了解如何计算八角形的边长,知道边长后,就能让蜘蛛角色画出蜘蛛网的线。
修改点击绿旗积木:
- 设定尺寸为 50%
- 面朝 112.5 度 ( 默认 90 度,往下旋转 22.5 度就变成 112.5 度,22.5 度为八边形 45 度的一半 )。
- 定位到 (0, 5),表示往上移动 5 点。
- 按照公式,因为 R 为 5,所以边长就是“5 x sin(22.5) x 2”。
知道一开始的边长后,就可以让蜘蛛开始织网。
- 下笔画画,开始织网。
- 使用重复积木,重复直到边长大于 140 就停止。
- 每次重复将边长改变 1,并移动边长的距离,移动后旋转 45 度 ( 正八边形每个角度 45 度 )。
- 每次重复等待 0.05 秒。
- 重复结束后,停笔,将蜘蛛移动回中心点。
完成效果
完成后,点击绿旗,蜘蛛就会在舞台上织出一个八边形的蜘蛛网。
范例解答
范例解答:蜘蛛结网 ( 八边形网 )
延伸练习
如果已经熟悉蜘蛛结网 ( 八边形网 ) 的原理,还可以尝试更多好玩的作法:
- 尝试修改每次重复边长改变的数值,看看会织出的蜘蛛网会长怎样。
微信扫码关注
抖音扫码关注