geogebra进阶系列9:利用映射指令和自定义工具绘制分形树
欢迎您点击文章上方蓝字,关注本公众号
分形树是最基本和最典型的分形结构,利用各种编程语言都能够绘制,中小学老师常见的几何画板也能绘制,网上的几何画板相关教程也比较多,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()函数
再最后制作完时,加上一个按钮,按钮脚本写:更新作图[],即可!(唐大仕老师的作法)
最近几期经典回顾
1.弗莱登塔尔“再发现”数学教学思想的学习体会
2.特级教师的论文学习系列2——一道课本例题的变式研究
3.乾坤大挪移——转化法妙解三角形周长、面积问题(区教研系列5)
5.从费马点问题谈利用旋转构造全等或相似的妙处(区教研系列3)