像 叶轴螺旋,一个很好的数学数字可以画出代码的顺序 福特圈子.
前一段时间我尝试使用生成这些 捉摸 和 处理中 -现在,为了好玩,我在JavaScript中尝试了它们。与他们一起玩的页面是 这里 ,并且源代码位于 Github回购.
在 页 ,您可以控制用于生成圆的Farey序列的级别-只需从0和1开始即可
使用提供的按钮,可以增加序列中的项数和相应的圆数。
在某一点之后,页面不会列出与圆相关的整个序列。
更新-Desmos中的福特圈子
使用以下方法创建福特圈子也是一个不错的练习 德斯莫斯 - 这是一个图的例子 that does this.
迪斯摩的一些福特圈子
就像实现JavaScript一样,使它在Desmos中起作用首先需要创建一些分数,然后找到要包含在Farey序列中的分数,然后使用该序列的元素绘制圆。该图所遵循的步骤基本上是:
- 创建一个 mxm set N of numbers (n,d ),在哪里 n 和 d are integers 1...m.
- 移位并减少这组有序对,以便在任何给定的行中为0<= n < d+1.
- 减少此集合进一步消除任何有序对 光盘 (n,d) > 1.
这些有序对可以视为分数(n/d),并且只有0到1之间的分数是简化形式-如果我们沿着数字线对这些分数进行排序,我们将获得分数的“ Farey序列”。在这种情况下,我们没有使用 JavaScript范例 使用 中位数 。绘制圆使用JavaScript示例(以及上面提到的Processing和Fathom示例)中使用的相同公式。
要么, 作为参数方程式