设为首页收藏官网网盘国家资源立人课堂 今天是: 2024-04-26    "世界知识产权日"  突出知识产权在所有国家的经济、文化和社会发展中的作用和贡献投稿

立人创客乐享社区

 找回密码
 立即注册
成都市金牛实验中学校

立人小喇叭+ 发布

信息中心 立人创客游戏化学习三乐法新课程开始啦!欢迎交流分享
04-04 10:04
立人创客社: 祝愿世界太平!地球早日康复!
01-07 11:43
jnschool 请同学们严格遵守国家网络安全规定,文明上网!
01-07 11:41
查看: 3493|回复: 0

Scratch如何画圣诞树

[复制链接] TA的其它主题
<

338

主题

1107

好友

1万

积分

社区管理员

创客导师

Rank: 9Rank: 9Rank: 9

积分
18055
威望
2974
立人币
8163
贡献
1229
大金牛币
444
乐创奖
39
乐享奖
12
乐课奖
6
立人证书
6

突出创客优秀版主荣誉管理创客元老

QQ
发表于 2020-6-28 16:40:14 | 显示全部楼层 |阅读模式 |
<

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
简介圣诞节要来了,用Scratch画一棵圣诞树吧!这篇文章介绍使用分形技术绘制一棵圣诞树的方法。分形图是一种具有自相似特性的图案,它的每一部分都是整体缩小后的形状。分形图展示了数学之美,颇有老子“道生一,一生二,二生三,三生万物”
圣诞节要来了,用Scratch画一棵圣诞树吧!这篇文章介绍使用分形技术绘制一棵圣诞树的方法。
分形图是一种具有自相似特性的图案,它的每一部分都是整体缩小后的形状。分形图展示了数学之美,颇有老子“道生一,一生二,二生三,三生万物”的哲学意味。分形图使用简单的基本图案构成,通常利用递归技术编程实现。
Scratch是面向青少年的图形化编程语言,与Python语言等高级语言相比,虽然只是个玩具,但是Scratch的递归是作了专门优化、简化,反倒使得递归调用的效率大大提高了,特别适合用来绘制分形图。
下面小海豚科学馆将介绍在Scratch中使用递归技术绘制圣诞树分形图,并在其基础上演化出几种其他类型的分形树。
d1e33ca517ea66c6334aeaa45ac5e855.png

圣诞树效果
6d65774f348080bb1ee6fbbb51101caa.jpg
adff3af334dfda3e3a7291c683e2cce8.jpg
21ff66d890c601690972868492c255f5.jpg
87d7adc0212af51233ce2c76c1fffc3d.jpg
感觉第一个效果还不错,其他几个像是自己没有整理好树的外型。。。
你也来画画看吧!
8e7035a9a5bdfdf95b6ea57a353ce09a.png

画圣诞树程序
431ec0d6999386e7a080507dc669a6b8.jpg
提示:没有分形绘制基础的朋友可以阅读《Scratch趣味编程进阶》一书的第7章《神奇分形图》,其中介绍了几种常见的分形图的构造方法。
下面对画圣诞树的程序脚本进行简单讲解。
第一步:画树干
树干从最初的30个单位开始,每次以0.9的比率缩减。画笔大小设定为每段树干长度的0.2。
f18a2be3c3eb21393a2f5b1729db1c94.png
树干是可以旋转的,这里设置为0,画出的笔直的树干。如果设置为一个旋转角度,自然就能得到弯曲的树干。
e5d8cd84e184ca8a8b45819a7a50d3c6.png
第二步:画左侧的树枝
在上面的"旋转"模块中,使用“右转…度”指令设置画笔角度,所以这里设置负值,可在树干左侧画出树枝。设置-120度,每次以0.55的缩减比率画出左侧的树枝。
5a4d71240d907395261cd5e44d4cb97c.png
这里为了演示,将递归结束条件设置为“长度<5”,可以看到树枝的脉络。小海豚科学馆提示,实际的效果是树枝会不断的变短变小,并在小于某个阈值时把将画笔颜色设为绿色,就能画出树叶效果。变化过程如下图所示。
9ca89d8de5e0248f59ffb18f71e4ee30.jpg
第三步:画右侧的树枝
同理,设置旋转角度为120度,画出右侧的树枝。为了增加变化,让右侧的树枝与左侧的树枝错开一下,避免左右对称。这里以每段树枝长度的0.2作为偏移量。
360688966cad7b4a240b58bc925981cc.jpg
第四步:画礼物
使用画笔大小设置为5,在树枝末梢随机画出彩色的圆点,给圣诞树挂上许多礼物。
cd1c0d1d66dc2c820982a8a1c3539ba9.jpg
这样利用分形技术绘制出了一棵圣诞树。为了让树枝有一些变化,在设置旋转角度时,设置为从100到120之间随机选一个数作为角度。
babec7d6eb53922e94120f5ba988f281.png
可以自行调整这个角度,让树枝以不同的角度画出,或向下,右向上,最终使整棵树具有不同的外观。小海豚科学馆提示您,这就像是一棵刚买回来的“圣诞树”,慢慢调整各个树枝的角度,把树冠调整到合适状态。当然,你可以随心所欲地调整,只要你喜欢就好。
6405ea5e395c7ffb88c0301c13805090.jpg
96239257a80054c206324092f777faf3.jpg

挑战一下
9e901969238f676cc68b45c7b7439c17.png
这两个模块的脚本,自己实现吧,就是设置画树时的画笔大小、颜色,以及画礼物的画笔大小和颜色。
0c28ed902a16e054fea7447fca86f5e4.jpg


楼主热帖

本帖被以下淘专辑推荐:

立人创客、创客立人
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

展开
Loading...
夜深了,早点休息吧!立人创客保护学生机制启动!
开站时间 -> 07:00
关站时间 -> 23:00
快速回复 返回顶部 返回列表