← 返回信息流
AI 资讯Hacker News·3 天前

Patterncollider: Generate and explore quasiperiodic tiling patterns

AI 深度解读

背景

准周期平铺(Quasiperiodic tiling)是一种特殊的图案结构:在任何方向平移都不会完全重复,但每个局部图案(即每个平铺簇)在整体中无限次出现。最著名的例子是彭罗斯平铺(Penrose Tiling)。这类图案也出现在中世纪伊斯兰艺术中,并以准晶(Quasicrystals)的形式自然存在。2011年诺贝尔化学奖授予丹·谢赫特曼,表彰他发现准晶,进一步推动了人们对这类非周期结构的研究。

Pattern Collider 是由物理科普创作者 Aatish Bhatia 与 Minute Physics 的 Henry Reich 合作开发的在线交互工具,旨在让用户轻松生成和探索各种准周期平铺图案。每个生成的图案都有一个独特的 URL,可以收藏和分享。该项目基于开源 MIT 许可证发布,使用了 p5.js、vue.js、hsluv.js、seedrandom.js 等 JavaScript 库。

核心内容

Pattern Collider 的核心机制是数学家 Nicolaas Govert de Bruijn 发现的多网格法(multigrid method)。其基本思想是:每一组相交的直线都可以通过一个对偶变换生成一个平铺图案。

从网格到平铺的构造过程:

  1. 在平面上画一组直线,找到所有交点。
  2. 在每个交点处,绘制以该点为中心、边与直线垂直的正多边形(通常是四边形,实际是菱形或矩形)。
  3. 这些多边形就是平铺的“瓦片”。每个瓦片对应两条直线的交点,其形状由两条直线的夹角决定。
  4. 由于构造方式的几何一致性,这些瓦片总能完美拼接,形成无缝图案。

这组直线网格和生成的平铺图案互为“对偶”:每种直线网格都对应一个隐藏的平铺图案。

如何生成彭罗斯平铺:

  • 画出 5 组等间距平行线,每组相对于前一组旋转 360°/5 = 72°。这组直线网格称为“五重网格”(pentagrid)。
  • 应用 de Bruijn 的对偶变换后,得到的正是经典的彭罗斯平铺。由于五重网格中直线只以 72° 或 144° 相交,因此生成的瓦片只有两种菱形:薄菱形和厚菱形。
  • 通过微调这些直线的位置(保持间距和方向不变),可以生成无限多种“类彭罗斯”平铺。

更多平铺类型: Pattern Collider 支持用不同数量的平行线组(即多网格)生成多种已知的准周期平铺:

  • 5 重:彭罗斯平铺
  • 6 重:阶梯平面(Stepped Plane)
  • 7 重:Socolar 平铺
  • 8 重:Ammann-Beenker 平铺
  • 12 重:Socolar 平铺

交互操作详解: 工具界面提供了丰富的控制和可视化选项:

  • 选择与高亮:点击网格中的直线可高亮平铺中对应的“带”;点击瓦片可高亮网格中对应的交点;支持拖拽多选。
  • 清除选择重置按钮。
  • 对称性(Symmetry):控制旋转对称的阶数(5、6、7、8、12 等)。除了 3、4、6 外,其他对称值生成的图案均为准周期。N 重对称意味着绕某点旋转 360°/N 后图案相同。
  • 图案(Pattern):控制每组直线离开中心的偏移量。当 pattern = 0 或 1 时,多个直线交于一点,生成多边形(多于四边)。有趣的现象发生在 0.5 或 1/symmetry 时。
  • 旋转(Rotate):绕平铺中心旋转图案。
  • 平移(Pan):侧向移动视窗,可与旋转结合探索图案不同区域。
  • 无序度(Disorder):对每组直线随机偏移,滑块控制偏移幅度,可探索更丰富的图案。
  • 随机化(Randomize):只有当 Disorder > 0 时生效,生成新的随机图案。
  • 分享图案:将当前图案的 URL 复制到剪贴板。
  • 半径(Radius):控制显示的圆形区域大小。
  • 缩放(Zoom):放大/缩小图案。
  • 显示网格/平铺:分别显示或隐藏网格或平铺层。
  • 颜色调色板:随机生成新调色板;反转颜色顺序。
  • 基于瓦片方向着色:根据瓦片的朝向而不是面积着色,对观察 3 重和 6 重对称特别有帮助。
  • 填充颜色显示交点显示边缘边缘亮度等开关。
  • 色相(Hue):平均色相;色相范围:从负到正,设为 0 则仅用一个色相的深浅着色。
  • 饱和度:0 为灰度;对比度:控制明暗范围,高对比度使图案更清晰但弱化色相。
  • 瓦片类型显示:展示当前图案中出现的每一种瓦片类型。

原理参考:文章末尾列出了深度参考文献,包括 David Austin、Laura Effinger-Dean 等人的文章,以及 de Bruijn 本人的代数理论论文。

关键要点

  • 准周期平铺的核心特征:平移不重复,但每个局部无限次出现;典型代表是彭罗斯平铺和自然界的准晶。
  • de Bruijn 多网格法是生成准周期平铺的通用数学框架,将直线网格与平铺图案通过交点对偶变换联系起来。
  • Pattern Collider 支持 N=5,6,7,8,12 等多种对称性,除 3、4、6 外均为准周期;6 重对称是周期性的(因为六边形可密铺),故工具特别标注。
  • 交互式探索:用户可通过调整对称性、偏移、旋转、平移、无序度等参数生成无限多样的图案,并实时交互选择高亮网格和平铺元素。
  • 开源与可分享:所有代码基于 MIT 许可证,每个图案生成唯一 URL,便于书签和分享。
  • 教育价值:结合 Minute Physics 视频和内置的参考文献,工具可作为学习准晶和非周期平铺的直观教学资源。

意义与影响

Pattern Collider 不仅是一个趣味生成器,更是数学可视化与开放科学的优秀范例。它将复杂抽象的准周期平铺理论转化为直观的交互工具,降低了准晶概念的认知门槛。该项目基于开源 MIT 许可证发布,鼓励社区使用、修改和衍生,有助于推动数学艺术与编程教育的结合。

从学术角度看,它复现了 de Bruijn 的多网格法,并提供了多种已知平铺模式的参考(彭罗斯、Socolar、Ammann-Beenker 等),可作为准晶研究的辅助验证平台。对于艺术创作者,它提供了一个无限探索几何美感的工具,其色彩控制、对称性调节等功能可用于生成高质量的装饰图案或视觉作品。

此外,文章链接了 Minute Physics 的视频和一系列深度学术参考文献,构建了从科普到专业研究的完整知识链条。这种“工具 + 视频 + 论文”的传播模式,未来或可成为数学可视化科普的参考范式。

查看原文 →github.com