Scratch编程教程——五角星

网友投稿 2018-12-28 11:35

第一步,五角星怎么画?

如果我们仅仅是画一个五角星的轮廓,那么五笔就可以画好了。

【Scratch编程教程】

而且五角星可分割成5个等腰三角形和1个正五边形,学过数学几何图形的朋友应该都知道:三角形内角之和是180度,正五边形的内角和是180*(n-2)=180*3=540度;所以五边形每个内角是540/5=108度;三角形是等腰三角形,底角是五边形的外角,即底角=180-108=72度,三角形内角和为180,那么三角形顶角,即五角星尖角=180-72*2=36度

所以,每次画完一根线后,只需要向右转动180-36=144度。

注意:站在画笔的视角,是向右转动144度而不是36度。

我们的程序如下图所示:(如果需要画更大或是更小的五角星只需改变移动的步数就可以了)

https://cdn.china-scratch.com/timg/181230/1135343G0-0.jpg

【Scratch编程教程】画五角星-少儿编程网

画一个五角星很简单吧。

事实上,这个和我们在纸上画画一样。画三角形,正方形,圆形,六角星等等都可以使用这样的方法。只需要控制笔画的走势和角度即可。很简单,快试试吧。

第二步,如何画一个实心的五角星

我们知道画一个简画五角星是怎么样的了,那么,我们该如何画一个实心的五角星呢?如果我们是在纸上画画,就是在轮廓里面涂颜色了,但是编程用这种方法是肯定不行的,因为太随机,比较慢。

编程需要的是规则,在一定规则下,执行重复的代码,程序就可以自动完成画画了。

那么我们就会想到。其实一个实心的五角星,是不是非常多个大小不一的五角星都在一个中心点上排列,所形成的呢?

所以,我们就在画一个五角星外边的时候,不断降低下一步五角星外边的边长。

这样一来,当边长降低小于1时,是不是就变成了一个最小的点,也就是代码最终执行点。

那么我们需要怎么写代码?看下图所示:

https://cdn.china-scratch.com/timg/181230/1135341947-1.jpg

【Scratch编程教程】画五角星-少儿编程网

TIP,当你不确定是否画对的时候,延时可以帮助你更好观察代码的执行情况。

最后,执行的结果就变成了一个实心的五角星,效果如下图所示:

https://cdn.china-scratch.com/timg/181230/1135354P6-2.jpg

【Scratch编程教程】画五角星-少儿编程网

是不是很酷?这个颜色渐变,就让中心看起来有凸出的感觉。于是,通过这段代码,我们的五角星就画好了。

第三步,想想一个镂空的五角星是怎样的?

这是一个很简单的问题,如果我们想画一个镂空的,那么就不需要等边长小于0结束。

我们只需要等边长小于一半的时候结束循环,那么图形就自然形成了一个镂空的五角星了。

https://cdn.china-scratch.com/timg/181230/1135352133-3.jpg

--end--

声明:本文章由网友投稿作为教育分享用途,如有侵权原作者可通过邮件及时和我们联系删除:freemanzk@qq.com