Plotter APP 开发周记
前言(关于星旅和Plotter)
自从暑假花了两个星期从零开始开发了一个太空科幻题材的小游戏《星旅 StarTrek》之后,发现 Cocos Creator(下面简称 CCC ) 真香!从使用 CCC 编辑器进行游戏场景的可视化编辑,到用 Typescript 进行游戏代码的编写,调试非常容易,让我的开发效率异常的高!
自从暑假花了两个星期从零开始开发了一个太空科幻题材的小游戏《星旅 StarTrek》之后,发现 Cocos Creator(下面简称 CCC ) 真香!从使用 CCC 编辑器进行游戏场景的可视化编辑,到用 Typescript 进行游戏代码的编写,调试非常容易,让我的开发效率异常的高!
3Blue1Brown 是一个由 Grant Sanderson 创建的 YouTube 数学科普频道。这个频道从独特的视觉角度解说数学,内容包括线性代数、微积分、神经网络、黎曼猜想、傅里叶变换、四元数甚至一些计算机算法问题。Grant Sanderson 创作数学科普视频的重要工具是他自己用 Python 程序设计语言构建的 manim 可视化引擎。
Plotter 是一个图形科学计算软件,它起源于我高三时对数学图形可视化的执念。Plotter 的一个早期版本界面、操作和实现都比较简陋。新版本的 Plotter 使用游戏引擎开发,虽然目前仍然还很简陋,甚至缺少了旧版本的很多功能,但它的架构非常有优势,可持续发展性比较强。希望未来的 Plotter 将会是一个非常易用的科学、数学、数据可视化工具。
除了大自然,其实生活中也处处可见数学,我们经常接触到的商业或艺术作品,例如游戏、动画和音乐中也可以见到数学的影子。有时候从数学的角度重新思考和审视这些作品,不仅能够帮助我们洞察现象背后的原因,以帮助我们更好的进行艺术创作,还能使我们从一个全新的角度去重新欣赏艺术作品中的美。
接下来我会从游戏、动画以及音乐三个方面去介绍其中涉及的数学原理。每个方面仅作介绍和发散,而不作深入解读,如果读者想深入了解某内容,可以上网查阅相关资料。
数学的本质在于它自由。——康托尔
夏天到了。
高二,期末考试结束那天,在空落落的图书室里,我正琢磨着数学题,这时mej走了进来。她径直走到了我身边。
“在做关于向量的题?” 她站在那里看了看我的练习本说。
“嗯。” 我回答道。
mej长发飘飘,当她靠近看我的练习本时,我感到一丝微风。
记得我很早之前就打算做一些科普视频,奈于技术不行,遂放弃。之前看过3Blue1Brown的视频,作者用他自己开发的数学可视化引擎manim制作动画,感觉效果很棒。发现知乎和B站陆陆续续有很多大佬开始使用manim做动画,于是进了一个manim交流群。开始摸索manim,实际上这个引擎的安装和环境的的搭建还挺麻烦,用manim也需要会Python和\LaTeX,恰好我都会,于是很快上手了。
本人才疏学浅,数学功底不好,微积分也只是了解一点,竟然想研究这样的高深理论?算了,不过是一个猜想而已,这里把它分享给大家,好让大家了解一下。
要知道,在百年来数学的不断发展中,数字这个集合越来越大,从自然数,正整数,整数到有理数,实数,复数。这就是延拓,运算使得数字拥有了价值,运算自然也被延拓了。比如在古代,分数这个二元运算的分子与分母只能是正整数 ,而现在,它的定义域被拓展到了复数。再比如,很早之前 x^a,a^x,\sin(x),\ln(x) 等等初等函数的定义域是实数或者正实数,而现在,它们可以被定义在复数域,并且是唯一的,这就是解析延拓。
这个不等式结论是19/1/13写关于圆锥曲线求线段比值最大值时发现的。
设 m,n,a,b>0
若 x>y 则
\frac{ma^2+nb^2+xab}{ma^2+nb^2+yab} \leqslant \frac{2\sqrt{mn}+x}{2\sqrt{mn}+y}
若 x<y 则
\frac{ma^2+nb^2+xab}{ma^2+nb^2+yab} \geqslant \frac{2\sqrt{mn}+x}{2\sqrt{mn}+y}
最近一段时间在学校学完了简单的线性规划,今天放假闲着于是就花了一点时间把之前用OpenGL实现的函数图像绘制修改成了线性规划的绘图,并且能实现目标函数极值寻找的可视化。
当我知道复数是无法比较大小的时候,我就怀疑这个命题了,如果我能从复数映射到实数,并且从实数映射到复数:
\mathbb{C}\rightarrow\mathbb{R}\\ \mathbb{R}\rightarrow\mathbb{C}
也就是任意的复数都有一个实数与之一一对应,那我就可以利用实数的性质将所有复数进行排序了,这就可以比较复数大小了。我们知道复数可以与平面上的点一一对应,经过我的思考,我想了一个办法,利用等速螺线: