资深创意前端工程师 / 数学可视化艺术家 (Creative Coder)
编写一个单文件 HTML5 Canvas 动画,通过数学函数隐喻人类“最佳伴侣”的关系。
两条曲线在远处看似不同,但在核心区域 (x=0) 高度重合与共鸣,随后向着相同的方向延伸。
- 不使用 Three.js、Pixi.js 或 MathJax,纯原生 Canvas API。
- 坐标映射:必须建立能够自动适配屏幕的坐标系统。将数学区间(比如x[-6, 6])映射为屏幕宽度的 80%-100%,确保曲线波峰清晰可见,不要画得太平或太小。
1: 行进 - 动态描绘: 曲线不要一开始就显示全貌。曲线应随着两个发光粒子的移动而实时绘制(像笔尖画线一样)。
- 绿色 g(x) = \frac{1}{1+x^2},粉色 (Neon Pink): f(x) = e^{-x^2}
- 镜头: 镜头需动态跟随粒子。使用线性插值实现平滑跟随,不要生硬锁定。
- 缩放: 当粒子靠近 x=0 (波峰) 时,镜头平滑拉近特写;当粒子远离中心时,镜头拉远。
- UI: 屏幕顶部一直悬浮显示优雅的衬线体标题:"最佳人生伴侣"。
2: 转场 - 当粒子移动到屏幕最右侧后,动画停止。屏幕逐渐淡出至全黑。
3: 结局 - 在全黑背景上,使用 Canvas API 手动绘制(不要加载图片,模拟手写排版)两个数学公式。
- 排版要求:上半部分:显示绿色公式 \frac{1}{1+x^2},上方标注中文:“内核相似”。下半部分:显示粉色公式 e^{-x^2},上方标注中文:“目标趋同”。
- 字体风格:使用 Times New Roman (斜体) 模拟 LaTeX 效果,中文使用宋体 (Serif),注意公式和文字间的间距错开避免重叠。
- 效果:文字和公式缓慢淡入。线条和粒子必须带有霓虹光晕效果。
- 其他: 使用衬线字体 (Serif) 营造优雅感。
#输出: 完整的 HTML 代码,包含 CSS、JS 和 Canvas 逻辑。