🌐 ZH

🔺 谢尔宾斯基三角形生成器

用递归细分绘制谢尔宾斯基三角形,或观看它从随机的混沌游戏点中浮现出来。调整深度与颜色,然后导出为PNG。

5

提示:混沌游戏打的是随机点,却依然收敛到同一个三角形。

指南

了解更多

01

什么是谢尔宾斯基三角形?

谢尔宾斯基三角形是一种自相似分形:取一个实心三角形,去掉由各边中点相连所构成的中间小三角形,再对剩下的三个三角形无限重复这一步。其分形维数为 log 3 / log 2 ≈ 1.585——大于一条线,却小于一块填满的面积。它由波兰数学家瓦茨瓦夫·谢尔宾斯基于1915年提出。
02

两种构建方式

本工具提供两种构造法。递归细分是确定性的:它反复将每个三角形切成三个更小的副本,从而精确地画出图形。混沌游戏则是随机的:固定三角形的三个顶点,从任意一点出发,反复随机选一个顶点并朝它移动一半的距离,每次都标出落点。两种方法产生的是完全相同的图形。
03

混沌游戏为何有效

“朝某顶点移动一半”的三条规则共同构成一个迭代函数系统(IFS),而该系统唯一的吸引子恰好就是谢尔宾斯基三角形。由于每条规则都把距离朝顶点收缩,反复的随机迭代会被拉到吸引子上,永远无法落进被去掉的中央空洞里。这正是为何撒下成千上万个随机点,仍能勾勒出一个完全有序的分形。

常见问题

深度滑块是什么?
它设置细分模式下的细分层数。深度为 n 时填充的三角形数量是 3^n,所以深度6就已经绘制了729个三角形。深度越大,细节越精细,但渲染也越慢。
随机的点怎么能形成有序的图形?
每一步“朝随机顶点移动一半”都是一个压缩映射。三个映射共同构成一个迭代函数系统,其吸引子恰好是谢尔宾斯基三角形,因此随机点总是被拉到那个形状上。
它的分形维数是多少?
约为1.585,等于 log 3 / log 2。这个三角形包含自身的3个副本,每个都缩小为原来的1/2,而 log 3 / log 2 正是联系这两个数的指数。