绘制正多角星形 ( 单纯 )
这篇文章会沿用“绘制正多边形”的范例,在 Scratch 里使用扩充功能的画笔,搭配变数、函数、定位、清单...等积木,绘制一个可以动态调整边数和边长的正多边形。
积木程序原理
本篇教学为“绘制正多边形”一文的延伸,请先打开范例进行编辑。
打开范例后,从左侧积木选单,新增 x 和 y 两个清单,负责记录多边形各个端点的座标。
将范例程序中,函数区块的“下笔、重复 n 次、停笔”的部分,删除下笔与停笔积木,加入清单积木 ( 如下图 )。
从左侧积木清单里,新增一个名为“画星星”的函数,勾选“执行完毕再更新画面”。
画星星的原理很简单,只需要将每个点都画出一条线,连接到“点的编号 + 2”的点,最后就能变成一个星星图案,举例来说,编号 1 的点会连接到编号 3 ( 1+2 ),编号 2 会连接到 4 ( 2+2 )。
不过要特别注意倒数两个编号,以六角星形为例,编号 5 加上 2 会变成 7,但实际上编号 5 要连接到编号 1,所以当要连接的编号超过端点数量时,就要改成“编号 + 2 - 端点数量”,例如编号 5 会连接到编号 1 ( 5+2-6 ),而编号 6 会连接到编号 2 ( 6+2-6 )。
下图是绘制“正六角星形”的过程:
从左侧积木清单,新增 a 和 b 两个变数,a 为起始点的编号数值,b 为连接点的编号。
编辑“画星星”的函数内容:
- 设定变数 a 为 1,表示从第一个点开始。
- 使用“重复...直到”积木,重复直到 a 大于边数 ( 有几个边就有几个 a )。
- 每次重复将 b 设定为 a+2。
- 如果 b 大于边数,就设定 b 为“b - 边数”。
- 根据清单中对应的数值,将画笔定位到指定的开始座标。
- 下笔。
- 根据清单中对应的数值,将画笔定位到指定的连接座标。
- 停笔。
- 结束后将 a 增加 1。
回到“多边形”的函数,在最下方执行“画星星”函数。
完成效果
完成后,点击绿旗,舞台上就会出现一个正多角形,用鼠标改变鼠标数值,就会产生对应的变化。
范例解答
范例解答:绘制正多角星形
继续阅读
如果已经熟悉了绘制正多角星形 ( 单纯 ) 的程序,就可以继续阅读“绘制正多角星形 ( 多线 )”的文章。
文章链接:绘制正多角星形 ( 多线 )
微信扫码关注
抖音扫码关注