螺旋图场景 (Spirograph)
概述
螺旋图(Spirograph)是一种经典的数学绘图工具,通过齿轮和圆盘的组合绘制出精美的几何图案。MathArt 将这一经典工具数字化,让您能够实时探索和创作令人惊叹的螺旋图形艺术。

螺旋图基于旋轮线(Roulette)的数学原理,当一个圆在另一个圆的内部或外部滚动时,固定在滚动圆上的点会描绘出优美的曲线。通过调整圆的半径比例和笔的位置,可以创造出无限多种独特的图案。
数学原理
基本概念
螺旋图的数学基础涉及以下几个核心概念:
定子(Stator)
定子是固定的圆,作为整个螺旋图系统的基准。转子的运动轨迹基于定子的半径。
- 定子半径决定了图案的整体大小
- 定子是所有运动的参考系
转子(Rotor)
转子是在定子上滚动的圆。转子可以有两种运动模式:
- 内旋模式(Inside):转子在定子内部滚动,产生内旋轮线(Hypotrochoid)
- 外旋模式(Outside):转子在定子外部滚动,产生外旋轮线(Epitrochoid)


笔距(Pen Distance)
笔距是指绘图点到转子中心的距离。这个参数决定了图案的形状特征:
- 笔距 = 0:图案退化为圆形
- 笔距 < 转子半径:图案呈现平滑的曲线
- 笔距 > 转子半径:图案出现尖角和回环
多层转子系统
MathArt 支持多层转子系统,这是对传统螺旋图的强大扩展。当添加多个转子时:
- 第一个转子在定子上滚动
- 第二个转子在第一个转子上滚动
- 以此类推...
每个转子都可以独立设置半径和运动模式,从而创造出极其复杂和精美的图案。

图案闭合
螺旋图图案的一个重要特性是闭合性。当转子完成若干圈滚动后,图案会回到起点,形成闭合曲线。闭合所需的圈数取决于定子和转子的半径比例:
- 如果半径比为有理数,图案会在有限圈数后闭合
- 闭合圈数由半径比的分母决定
注意:MathArt 会自动计算图案的闭合点,并在启用"自动停止"功能时,在图案闭合时自动停止绘制。
快速开始
创建第一个螺旋图
选择场景:在场景选择器中选择"螺旋图"场景
调整基本参数:
- 设置定子半径(如 150)
- 设置笔距(如 75)
- 添加一个转子,设置半径(如 75)和模式(Inside)
观察绘制:点击播放按钮,观看螺旋图的实时绘制过程
[截图占位:展示检查器面板中的基本参数设置]
就这么简单!您已经创建了第一个螺旋图作品。接下来,让我们深入了解各个设置选项。
场景变换设置
场景变换设置控制整个螺旋图在画布中的位置、旋转和缩放。
偏移(Offset)
- Offset X:水平方向偏移,正值向右移动
- Offset Y:垂直方向偏移,正值向下移动
💡 提示:使用偏移可以将螺旋图放置在画布的特定位置,便于构图。
旋转(Scene Rotation)
- 控制整个场景的旋转角度
- 单位:度(°)
- 正值顺时针旋转,负值逆时针旋转
缩放(Scene Scale)
- 控制整个场景的缩放比例
- 默认值:1.0
- 最小值:0.01
注意:场景缩放会影响所有图层,如果只想缩放单个图层,请调整该图层的参数。
动画设置
动画设置控制螺旋图绘制过程中的动态效果。
缓动效果
开始缓动(Start Ease)
- 启用后,绘制开始时速度从零逐渐加速
- 使绘制过程更加平滑自然
- 避免突然开始带来的视觉跳跃
结束缓动(End Ease)
- 启用后,绘制接近闭合时速度逐渐减慢
- 使图案闭合更加平滑
- 避免突然停止带来的视觉跳跃
淡入淡出效果
开始时淡入定子(Fade In Stators On Start)
- 启用后,定子和转子的引导线会在绘制开始时淡入显示
- 增强视觉效果,使引导线的出现更加自然
结束时淡出定子(Fade Out Stators On Finish)
- 启用后,定子和转子的引导线会在绘制完成后淡出
- 使最终画面更加干净,突出绘制的图案
图层设置
MathArt 支持多图层系统,每个图层可以独立配置参数,绘制不同的螺旋图图案。
图层管理
具体参数配置可以参考系统自带Spirograph场景wormhole
- 添加图层:点击"+"按钮添加新图层
- 复制图层:点击复制按钮复制当前图层
- 删除图层:点击删除按钮删除当前图层(至少保留一个图层)
- 移动图层:使用左右箭头按钮调整图层顺序
- 重命名图层:双击图层标签可以重命名
注意:图层按照从下到上的顺序绘制,后绘制的图层会覆盖先绘制的图层。
图层参数
定子半径(Stator Radius)
- 定义该图层定子的半径
- 单位:像素
- 最小值:1.0
- 影响图案的整体大小和形状
笔距(Pen Distance)
- 定义绘图点到转子中心的距离
- 单位:像素
- 最小值:0.0
- 影响图案的形状特征(平滑曲线 vs 尖角回环)
[截图占位:展示不同笔距值的效果对比]
线条粗细(Line Weight)
- 定义绘制线条的粗细
- 单位:像素
- 最小值:0.1
- 较粗的线条适合大尺寸图案,较细的线条适合精细图案
速度(Speed)
- 定义绘制速度
- 数值越大,绘制越快
- 最小值:0.01
注意:速度过快可能导致图案细节丢失,建议在探索阶段使用中等速度,最终渲染时根据需要调整。
显示引导线(Show Guides)
- 启用后,显示定子和转子的引导圆
- 引导线帮助理解图案的生成过程
- 对于教学演示非常有用
自动停止(Auto Stop)
- 启用后,图案闭合时自动停止绘制
- 禁用后,图案会无限循环绘制
- 建议启用以获得完整的闭合图案
[截图占位:展示引导线和自动停止的效果]
渐变设置
渐变设置控制螺旋图线条的颜色,可以创建单色或多彩渐变效果。
调色板编辑
[截图占位:展示调色板编辑器界面]
- 颜色节点:支持多个颜色节点,创建渐变效果
- 添加颜色:点击调色板下方的区域添加新颜色
- 删除颜色:选中颜色节点后点击删除按钮
- 调整颜色:点击颜色块打开颜色选择器
- 调整位置:拖动颜色节点改变其在渐变中的位置
💡 技巧:
- 使用对比强烈的颜色可以突出图案的层次
- 相邻颜色选择相近色调可以创造平滑过渡效果
- 渐变颜色会沿着绘制路径依次应用
随机调色板
MathArt 提供强大的随机调色板生成功能,帮助您快速创建和谐的配色方案。
随机颜色数量
- 设置要生成的颜色数量
- 范围:2-16
- 点击生成按钮后会自动创建指定数量的颜色
配色策略
[截图占位:展示不同配色策略的效果对比]
单色(Monochromatic)
- 基于单一色调,通过明度和饱和度变化创建颜色
- 适合创造统一、和谐的视觉效果
类似色(Analogous)
- 使用色环上相邻的颜色
- 创造自然、舒适的视觉感受
互补色(Complementary)
- 使用色环上相对的两个颜色及其变体
- 创造强烈的对比效果
分裂互补色(Split Complementary)
- 使用主色调和色环上与其互补色相邻的两个颜色
- 既有对比又保持和谐
分裂互补色设置
当选择"分裂互补色"策略时,可以进一步配置:
- 主色调数量:设置主色调的数量(3-6个)
- 主色调颜色:可以手动调整每个主色调的颜色
- 随机化按钮:点击随机按钮生成新的主色调组合
[截图占位:展示分裂互补色设置界面]
颜色反转
点击反转按钮可以将调色板中的颜色顺序反转,快速获得不同的视觉效果。
转子设置
转子是螺旋图的核心组件,决定了图案的基本形态。
添加和删除转子
- 添加转子:点击转子列表上方的"+"按钮
- 删除转子:点击转子右侧的删除按钮(至少保留一个转子)
注意:添加多个转子会创造更复杂的图案,但也会增加计算复杂度。
转子参数
[截图占位:展示转子参数设置界面]
转子半径(Rotor Radius)
- 定义转子的半径
- 单位:像素
- 最小值:1.0
- 转子半径与定子半径的比例决定了图案的基本形状
转子模式(Rotor Mode)
内旋(Inside):转子在定子内部滚动
- 产生内旋轮线(Hypotrochoid)
- 图案更加紧凑、内敛
外旋(Outside):转子在定子外部滚动
- 产生外旋轮线(Epitrochoid)
- 图案更加舒展、开放
[截图占位:展示内旋和外旋模式的效果对比]
多转子组合技巧
💡 技巧:
- 对称图案:使用相同半径的转子,交替设置内旋和外旋模式
- 复杂图案:使用不同半径的转子,创造层次丰富的图案
- 渐变效果:转子半径逐渐增大或减小,创造渐变效果
[截图占位:展示不同转子组合的效果]
控制按钮
在检查器面板底部,提供了三个控制按钮:
清除轨迹(Clear Trace)
- 清除当前绘制的轨迹
- 保留所有参数设置
- 可以重新开始绘制
重新开始(Restart Trace)
- 清除轨迹并从头开始绘制
- 相当于重置绘制状态
完成轨迹(Finish Trace)
- 立即完成当前轨迹的绘制
- 跳过绘制动画,直接显示完整图案
- 适合快速预览最终效果
[截图占位:展示控制按钮的位置]
动画类型
MathArt 为螺旋图场景提供了专门的动画类型,可以在时间线中使用。
旋转动画(SpirographRotateAnimation)
让整个螺旋图在绘制过程中或完成后进行旋转。
参数:
- 持续时间(Duration):动画持续时间
- 目标旋转速率(Target Rotation Rate):旋转的速度
应用场景:
- 为静态图案添加动态效果
- 创造旋转中的螺旋图动画
- 配合绘制动画创造复合效果
[截图占位:展示旋转动画效果]
完成等待动画(SpirographFinishWaitAnimation)
等待螺旋图完成绘制后再继续后续动画。
参数:
- 持续时间(Duration):最长等待时间(兜底上限)
特点:
- 优先依赖螺旋图的视觉完成状态
- 当图案闭合或达到最长等待时间时结束
- 避免异常配置导致时间线卡住
应用场景:
- 确保螺旋图完全绘制后再执行其他动画
- 配合相机动画、淡入淡出等效果
- 创建完整的动画序列
[截图占位:展示时间线中的动画配置]
高级技巧
创建经典图案
玫瑰曲线(Rose Curve)
- 定子半径:150
- 转子半径:75(Inside)
- 笔距:75
- 特点:产生花瓣状的图案
星形图案(Star Pattern)
- 定子半径:150
- 转子半径:50(Inside)
- 笔距:60
- 特点:产生带尖角的星形图案
复杂螺旋
- 定子半径:150
- 转子1:75(Inside)
- 转子2:30(Outside)
- 笔距:40
- 特点:产生复杂的嵌套螺旋图案
[截图占位:展示经典图案示例]
性能优化建议
- 引导线:最终渲染时关闭引导线以获得更干净的图像
- 速度:探索时使用较高速度,最终渲染时降低速度以获得更平滑的动画
- 图层:合理使用图层,避免过多重叠图层影响性能
- 渐变:使用较少的颜色节点可以提高渲染效率
创作灵感
- 数学教学:展示旋轮线的数学原理,帮助学生理解几何概念
- 艺术创作:结合多图层和渐变,创造独特的抽象艺术作品
- 动画制作:配合旋转动画和相机动画,制作动态的数学艺术视频
- 图案设计:导出图案用于纺织、壁纸等设计领域
常见问题
Q: 为什么我的图案没有闭合?
A: 可能原因:
- "自动停止"选项未启用
- 半径比例导致闭合圈数过长
- 绘制时间不足
解决方法:启用"自动停止"选项,或使用"完成轨迹"按钮立即完成绘制。
Q: 如何创建对称的图案?
A: 尝试以下方法:
- 使用有理数的半径比例
- 使用相同参数但不同颜色的图层
- 利用场景旋转创建旋转对称
Q: 图案太复杂,看不清细节怎么办?
A: 建议:
- 增加场景缩放
- 减少转子数量
- 使用较粗的线条
- 调整笔距参数
Q: 如何让图案更有层次感?
A: 尝试:
- 使用多图层,每层使用不同的参数
- 使用渐变颜色,让颜色沿路径变化
- 调整线条粗细,创造粗细对比
- 使用半透明颜色,让图层相互叠加
下一步
💡 小贴士:螺旋图艺术是一个充满可能性的领域。尝试不同的参数组合,您会发现每个设置都能带来意想不到的惊喜!
