Unity傅里叶级数可视化
Contra
2019-11-03
【编程德鲁伊】系列是我的横向编程练习笔记,每期围绕一个主题(数学物理电子图形声音...),用几种程序语言分别实现。战法牧贼同时修,能抗能打能奶能开溜。
编程德鲁伊 - 数学篇 - 傅里叶级数可视化 Unity 实现

上一章做了三角函数可视化,分别用 MaxMSP, JavaScript (React), Python, 以及 Unity:

这一章重拾被傅里叶支配的恐惧。 谈到傅里叶变换、傅里叶分析,通常会分为两部分内容来讲,傅里叶级数和连续傅里叶变换。本章集中在傅里叶级数。
数学基础
在数学中,傅里叶级数可以看作一组正弦曲线组成的周期函数,由加权求和组合而成。(wikipedia)
举个例子,假设有一个周期性方波,它可以分解成多个正弦波。正弦波越多,合成后的曲线越接近方波:

更多图文解释及公式推导,可见上一节 JavaScript(React)傅里叶级数可视化 。
上一节的实现效果:

本节用 Unity 。
曾写过一篇 Unity三角函数可视化 ,在其代码基础上,将绘制公式由三角函数修改为下方的傅里叶级数即可:

完整代码可见后文。
最终效果:

参考资源
Talk is cheap. Show me the code!
本例及【编程德鲁伊】系列大部分代码都开源在这里: https://github.com/avantcontra/coding-druid
公众号/B站/小红书/抖音/知乎:实验编程
实验编程社群资源、公开课: https://ghc.h5.xeknow.com/s/hzkMX
实验编程情报中心(会员): https://ghc.h5.xeknow.com/s/2BCFuJ
Cheers🍻
Contra