分享

​​geogebra进阶系列9:利用映射指令和自定义工具绘制分形树

 聋哑拙僧 2023-09-04 发布于山东

geogebra进阶系列8:播放本地和网页音乐的方法

图片

分形树是最基本和最典型的分形结构,利用各种编程语言都能够绘制,中小学老师常见的几何画板也能绘制,网上的几何画板相关教程也比较多,geogebra教程则非常少,其中几何画板的效果如下:

图片

很显然,这个几何画板的迭代功能较好,但是绘制的效果比较“不好看”。

利用神奇的数学软件geopgebra,应该如何绘制分形树呢?

可以!

而且效果很好!看看下面的动图:

图片

静态效果如下:

图片

绘制过程:(笔者选自唐大仕博士的课程,并且进行思考和重新叙述)

第一步;制作自定义工具:

图片

但是如果向上图一样,即点CDE是自由点,则新建自定义工具中,输入对象不能选线段f,

图片

理由是:这些DCE的点和线段,和线段f无关。

怎么办呢?

即要把点CDE的产生和线段AB有关!

我们可以考虑利用旋转得到点CDE。

图片

例如点C=位似(旋转(描点(f, 0), π + π / 4, 描点(f, 1)), 0.5, 描点(f, 1))

这样下面创建自定义工具:

图片

图片

图片

现在利用这个工具试试看效果:

图片

发现第一个线段是可以用的,但是到第二层的时候,点击绿色的列表中的线段的时候,这个自定义不起作用了,为什么呢?

原因分析:原则上,迭代需要一样的“东西”,才能迭代下去,但是这个自定义工具输入是一条线段,输出是一个列表,所以直接往下点击或迭代,是不能起作用的!

怎么办呢?

利用映射指令啊!

映射指令具有非神奇的作用,可以起到“乾坤大挪移”和批量制图的作用!

参考:(点击可打开)

geogebra进阶系列6:继续谈映射指令的神奇作用(等边三角形中的等边三角形)

geogebra进阶系列4:映射指令的神奇作用(巧妙提取多边形列表中的顶点)

图片

第二步:指令:映射(分形树(s), s, l1)

效果得到如下的线段的集合:

图片

但是这些集合是单独的集合构成的一个大集合,还需要“合并”,或者利用“扁平列表”

否则产生如下错误:

图片

利用指令“扁平列表(l5)”得到的l6和l5对比如下:

图片

这样可以利用指令:l7=映射(分形树(s), s, l6)得到如下的效果。

图片

也就是说,可以使用迭代列表的指令了!

第三步:

迭代列表(扁平列表(映射(分形树(p), p, q)), q, {{f}}, 8)

得到:

图片

即这个分形树如下:

图片

至此,这个分形树已经绘制完成。

但是如果想做成动态可变的分形树,只需要在点CDE的定义时,加上一个随机数,即random()函数

图片

再最后制作完时,加上一个按钮,按钮脚本写:更新作图[],即可!(唐大仕老师的作法)

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多