【制作过程】
1.通过观察,可以发现规律是比较明显的,按照顺序,每次移动一个单位的距离,方向或左或右.在步骤5里面给出了平移向量的通项公式.
2.如图1,构造变量n,使得最小值为1,最大值为2,增量为1,当前值为1.
计算:m1=n+1.这个计算很关键,将会作为迭代的重要迭代项.

图1 构造变量n
3.创建文本.这是一个交互文本,文本内容会随着几何图形的变化而变化(如图2).
打开一个文本输入框,点击进入文本输入状态.然后,在变量n上面点击一下,就得到$bl{n,2},它表示保留变量n的小数点后面两位数字.
这个文本是一个交互文本,当n发生变化的时候,文本也随之变化(这一点读者可亲自试验).
把$bl{n,2}改为$bl{n,0},就表示只显示变量n的整数部分.

图2 与变量n相关的交互文本
4.如图3,构造变量m,用来控制迭代深度,最小值为0,最大值为365,增量为0.5,当前值为10.

图3 构造变量m
一开始迭代深度不宜设置过大,否则有可能因为迭代的样本数太大,导致占用内存超出限制而引起网页崩溃.
5.如图4,原点O按照向量(m2,m3)平移,得到点A,然后连接线段OA.其中:
m2=((1+(-1)^(floor(sqrt(4*n-3))))/2)*(-1)^floor(sqrt(n)+1/2)
m3=((1-(-1)^(floor(sqrt(4*n-3))))/2)*(-1)^floor(sqrt(n)+3/2)
当n=1、2、3、…的时候,m2和m3构成两个特殊的数列.(https://www.daowen.com)

图4 按向量进行平移变换
6.修改点A的高级属性(如图5).
把点A的线色改为(0,0,0,1),填充色改为(0,0,0、if(prime(n),1,0)).
其中,if(prime(n),1,0)表示填充色的透明度,如果n是素数,透明度为1,表示不透明,否则透明度为0,表示透明.

图5 修改点A的高级属性
7.选中步骤3里的文本,再选中点A,点击“附着|分离”按钮,把文本合并到点A上(如图6).
合并之后的文本,可以调整大小、颜色、字体、背景色,也可以调整其与点A的相对位置.

图6 合并文本
8.作迭代,如图7.
迭代规则:O→A,n→m1,迭代深度是m.

图7 迭代规则
9.逐步增加变量m的值,以网络画板不会卡顿为原则.经验证,当迭代深度增加到3000,会稍微有点卡顿.
图8是迭代深度为3023的迭代结果,隐藏了线段OA和合并文本的迭代.

图8 素数螺旋