大家好,欢迎来到IT知识分享网。
Scratch画分形几何图系列61:IFS画埃菲尔铁塔分形
上一篇我们用递归画了萌态十足的变形龙分形,本篇就用IFS迭代系统画一个谢尔宾斯基三角的变形——“埃菲尔铁塔分形”。
(1)大家应该记得谢尔宾斯基三角,就是一个基本元素相对于基准点(正三角形的底边中点),左移、右移各0.5,上移sin60的距离形成的,迭代函数子程序、参数数据表、代码和效果如下面的四个图。
a |
b |
c |
d |
e |
f |
p |
|
0.50 |
0.00 |
0.00 |
0.50 |
-0.50 |
0.00 |
0.33 |
|
0.50 |
0.00 |
0.00 |
0.50 |
0.50 |
0.00 |
0.33 |
|
0.50 |
0.00 |
0.00 |
0.50 |
0.00 |
Sin60 |
0.34 |
谢尔宾斯基三角的参数表
画谢尔宾斯基三角的的代码脚本
谢尔宾斯基三角分形
(2)但是如果我们把谢氏三角的IFS迭代函数的参数做一些微调,把前两个迭代函数的参数b和d的值由0.5降为0.3,即是将Y方向的压缩,显得“矮胖”一点,体现底座宽厚。而对第三个迭代函数的b和d值由0.5增大到0.7,就显得“廋高”一些,体现塔尖高耸,纵向平移值f的值由sin60减小为0.55。还有就是将几率值P的分配由平均1/3,改为前两个各1/4,后一个为1/2,这样,“埃菲尔铁塔”的形状就出现了!数据表如下:
|
a |
b |
c |
d |
e |
f |
p |
|
0.50 |
0.00 |
0.00 |
0.30 |
-0.50 |
0.00 |
0.25 |
|
0.50 |
0.00 |
0.00 |
0.30 |
0.50 |
0.00 |
0.25 |
|
0.50 |
0.00 |
0.00 |
0.70 |
0.00 |
0.55 |
0.50 |
方式选择程序和画图程序如下:
画埃菲尔铁塔分形的脚本
如果在把三个位置的颜色区分一下,再配一个广场背景,就会画出非常酷炫的“埃菲尔铁塔”分形。
你会对谢尔宾斯基三角做一些其它变形吗?
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/94689.html