- UID
- 5611
- 帖子
- 48
- 精华
- 0
- 积分
- 190
|
ggb迭代制作教程附制作工具-可以媲美gsp的ggb迭代
下面以二分树迭代为例讲解一下如何使用ggb进行迭代
1、新建一个空白ggb文件
2、在下面的输入框里分别输入三个数值(这三个数值名不能改):
butn=0
sd=3
yingshe=2
数值butn的值必须为0,
因为二分树为二映射迭代,故yingshe=2,
迭代深度sd=3,应将其属性中滑竿上下值分设为2-6,增量为1,并显示滑竿
3、再在输入框里输入其他自定义参数
r=0.8
α=2
r为树杈长度
α为树杈张角
4、开始制作迭代图,原像点为A,B,派生点为C,D(这些点必须为大写英文字母)
5、制作映射点列表list1和显示列表gist1(这两个列表名不能改)
在输入框里输入: list1={A,B,C,D}
再在输入框里输入: gist1={a,c}
C,D分别为原像点A,B的派生点
a,c为制作的两个树杈线段
6、此步骤最为重要
*双击点C打开重定义框,拷贝点C定义: Dilate[Rotate[A, α, B], r, B]
.双击list1打开重定义框,粘贴替换里面的点C
.同样替换list1里的点D
.最后list1的定义成为:
{A, B, Dilate[Rotate[A, α, B], r, B], Dilate[Rotate[A, -α, B], r, B]}
*而显示列表gist1={a,c}中的线段a,c也用定义换下来(此时a,c即可删除)
.最后gist1的定义成为: {Segment[B, C], Segment[B, D]}
.(该步骤也可在"属性"-"基本"-"定义"中完成:将某对象的定义拷贝粘贴替换到其它对象的定义中.)
7、打开附送的"ggb迭代工具.exe"程序
设置原像数为2,在后面按顺序输入原像点A,B(红色)和派生点C,D(黑色)
设置映射数为2,一映射输入B,C
二映射输入B,D
取消最终迭代使之为全部迭代
在ggb中双击list1打开list1的重定义框,拷贝list1定义粘贴到"ggb迭代工具.exe"的第一个文本框里
在ggb中双击gist1打开gist1的重定义框,拷贝gist1定义粘贴到"ggb迭代工具.exe"的第二个文本框里
8、点击"生成JS全局语句"按钮,会在第三个文本框里生成一段文本,全拷贝它
9、回到ggb中,放入两个按钮。打开属性中的全局javascript,将ggb工具中拷贝的文本粘贴到此,然后确定
10、在按钮button1的On Click中写入: fun1(); 在下面选择JS脚本,然后确定
在按钮button2的On Click中写入: fun2(); 在下面选择JS脚本,然后确定
在数值sd的On Update中写入: fun2(); fun1(); 在下面选择JS脚本,然后确定
11、退出属性,一个二分树迭代已经完成了。
按钮一可以生成迭代;
按钮二可以删除迭代;
拖动深度sd的滑竿可以实现动态迭代;
12、完成—————整个过程耗时不超过三五分钟,可以和gsp媲美啦!!!
如有不清楚的可参看下面的几个ggb迭代文件
ggb迭代工具:
ggb迭代工具.rar (11.68 KB)
下面是一个含"深度迭代"的"正多边形迭代.ggb"
正多边形迭代.ggb (7.96 KB)
数学之美.ggb (10.99 KB)
二分树迭代.ggb (10.48 KB)
谢尔宾斯基(Sierpinski)三角形-ggb迭代.ggb (10.1 KB)
望能对迭代有兴趣的各位老师有所帮助!
问周老师,方老师,myzam老师和各位老师好! |
|