斐波那契螺旋其实是一条被折起来的直线
来源:dev.to — 2026-11-05
📋 概述
你见过无数次的那张图:边长 1、1、2、3、5、8 的正方形像拼图一样咬合,一条光滑的螺线从中穿过。作者的 three.js 实验问了个简单问题——把它展开会怎样。他把每个正方形铰接到邻居上按下播放,螺旋一圈圈松开,最后完全摊平:一条穿过所有正方形的直线。这不是花招,而是几何必然。因为经典斐波那契螺旋并不是一条曲线,而是一串四分之一圆弧,每段弧的半径正好等于所在正方形的边长;而正方形内的四分之一圆弧连接的是两个对角点,所以弧的弦恰好就是对角线,长度为边长乘根号二。把每个正方形绕相接点旋转到所有对角线同方向,再用动画把弧变形为弦,螺旋就还原成直线。这个展开还给出可预先验算的预测:展开总长等于根号二乘以斐波那契前 n 项之和,即根号二乘以 F(n+2) 减一,九块正方形相加为 88,直线正好 88 乘根号二,约 124.45。
🔑 核心要点
- 螺旋不是一条曲线,而是一串四分之一圆弧,每段弧的半径正好等于所在正方形的边长。
- 正方形内的四分之一圆弧连接两个对角点,因此弧的弦就是对角线,长度为边长乘根号二。
- 展开必须两步:旋转正方形让所有对角线同向,再把弧变形为弦;只做第一步不会变直。
- 因为正方形关于自身对角线对称,展开后可以向另一侧重新折叠,而不是原路退回。
- 长度可以事先算出来:根号二乘此前 n 项之和,也等于根号二乘 F(n+2) 减一;九块正好 88 乘根号二。
💡 金句
“The spiral is a straight line that has been folded.”
译:这条螺旋,就是一条被折叠起来的直线。
👍 0
👎 0
← 返回 dev.to 首页