怎么照着一张截图,让 AI 复原一段复杂的 Manim 动画?
2026 年 9 月 14 日 · 极坐标⋅XYZ
怎么照着一张截图,让 AI 复原一段复杂的 Manim 动画?
在极坐标⋅XYZ 的工作区里新建一个 .py 文件,把截图加进 AI 面板的输入框,写一句「根据图片信息,复原动画」,发送就行。面板上写的是「AI 助手」,我们自己叫它 Manim Coding Agent:它先看懂图里画的是什么,再写代码、在浏览器里试跑、检查画面,最后出一段能播放、能导出的动画。
这篇用的截图是庞加莱圆盘里的双曲镶嵌,圆盘里铺满七边形,越靠边越密,顶上还有一行 Möbius 变换公式。我们只写了两行字,发了一轮,调用 2 次模型,扣 51 积分。图都截自这次操作的录屏。

第一步:打开工作区,新建文件
进工作区,第一次会看到「正在唤醒数学引擎」,页面上写着首次加载约 8 到 15 秒,之后走缓存。电脑上不用装 Python、LaTeX 或 ffmpeg。
新建文件,名字填 moby,不写后缀会自动补 .py。文件先空着。
第二步:准备参考截图
我们用的是一张竖版截图,1031×1568,112KB。上半部分是两行公式:
- f_a(z) = e^{iθ}(z − a)/(1 − āz)
- |a| < 1,{p,q} = {7,3}
下半部分是圆盘里的七边形镶嵌。截图里只有一帧画面,动起来是什么样,图上看不出来,这部分留给它自己理解公式。

第三步:写提示词,选思考深度
输入框里就两行,原样贴出来:
- @moby.py
- 根据图片信息,复原动画
第一行用 @ 指定文件,代码就写进 moby.py。第二行告诉它照图做。截图加进来以后,输入框上方会出现一个带尺寸的缩略图标签,旁边是 moby.py 的标签,两个都在就可以发了。
这是什么图形、点 a 怎么动、画幅多大,提示词里一个字都没提。
思考深度选的是「低」。四档的说明分别是:关,默认档,靠真实渲染反馈;低,略慢,写复杂场景时更稳;高,明显更慢;最深,最慢也最贵。镶嵌要一层层往外生成,算复杂场景,所以没用默认档。

第四步:发送,看它一步步做
发出去以后,它先思考了 1.27 万字,给出的第一句判断是:这个参考图是双曲镶嵌 {7,3} 在庞加莱圆盘中的动画,顶部是 Möbius 变换公式,圆盘内是七边形镶嵌。
接着「过程」一栏走了 5 步:
- 写入 moby.py,193 行
- 在浏览器里试跑 MobiusTiling,131 帧,8.7 秒
- 检查画面,5 帧
- 汇报
- 渲染成片
检查画面那一步,是系统从试跑结果里抽帧给它看。它看完写的是:公式显示完整,圆盘镶嵌层次清晰,红色动点 a 和中心 0 的位置正确,没有出框或缺字,变形那一段正常。
这一轮一共调用模型 2 次,扣了 51 积分,当时是错峰时段,按 5 折算的。这一轮存成了检查点 v1。

第五步:核对它交回来的东西
它的汇报是:在 moby.py 中复原了参考图的动画,庞加莱圆盘内的 {7,3} 双曲正七边形镶嵌,顶部显示 Möbius 变换公式,随后镶嵌随圆盘内动点 a 的运动作 Möbius 变换;镶嵌用 BFS 反射实时生成测地线弧,近边界处自然加密;已试跑通过,画面无重叠、出框或缺字。
我们逐条对了一下。
公式和参考图一致,两行都在,分式也排出来了。
{7,3} 的意思是每块是正七边形,每个顶点三块相接。正七边形的内角是 128.57°,三块加起来 385.7°,比 360° 多,平面上拼不拢,所以只能在双曲几何里铺,庞加莱圆盘就是把整个双曲平面画进一个圆里。成片里数一下中间那块的边,是七条,顶点处是三块相接,对得上。
动画的走向:红点 a 从圆心附近出发,往上、往左、往左下、往右下绕了一圈,最后回到圆心。镶嵌跟着挤压、转动,但始终在圆里。这个也对得上:|a| < 1 时,f_a(z) 把圆盘映回圆盘,边界圆映回边界圆,a 被送到 0。我们用 python 随机取了 2000 组 a 和 θ,圆盘内的点变换后模长最大是 0.99998,边界上的点变换后模长都是 1。
有一处它说得不对。汇报里写「画面无重叠」,实际上圆盘上沿压住了第二行公式里的 {p,q},圆盘画出来以后就一直压着,放大看很明显。检查画面那 5 帧它没挑出来。要改的话接着说一句「圆盘往下挪一点,别压住第二行公式」就行,改坏了可以退回检查点 v1。

还有画幅。参考图是竖的,成片是横的 854×480。它自己在建议里提了这件事,三条建议原文是:把参数 a 的运动路径改成更复杂的轨迹;把镶嵌 {7,3} 换成 {5,4} 或 {8,3};改成竖屏画幅以更贴近参考图比例。想要哪条点一下,它接着改。
它写的代码开头是一组可调参数,P, Q = 7, 3 是 Schläfli 符号,EDGE_CUT = 0.988 控制离圆心多远的格子还画,MAX_POLY = 2200 是格子数量上限,注释都是中文,自己改数字也看得懂。
第六步:导出
预览区上面一排就是导出:「无水印」开关、格式选 MP4、「下载」、「存到 output/」。不用 AI 的话,写代码、渲染、导出都不扣积分。
花了多少,适合谁用
这次从发送到出片一轮,调用 2 次,51 积分,错峰 5 折。北京时间工作日 9 到 12 点、14 到 18 点是高峰,同样的操作按原价扣。用 AI 要登录,新账号送 1,000 积分。
适合手里有一张好看的截图、却不知道从哪下手写代码的人。双曲镶嵌这种东西,自己写要先弄懂反射怎么生成格子、测地线弧怎么画,照图复原省掉的主要是这一段。它交回来的东西还是要自己看一遍,像这次的公式重叠,汇报里就没说。
想看懂这 193 行代码,教程里每一课旁边都是能直接运行的代码。拿题目截图、泰勒展开参考图让它做动画的例子,在《AI 能直接生成 Manim 数学动画吗?》里;提示词写得很细、一轮就对的例子,见《怎么用 AI 把一道最值题做成 Manim 动画?》。
常见追问(FAQ)
Q:截图里的公式它能读出来吗? A:这次能。参考图里的 f_a(z)、|a| < 1 和 {p,q} = {7,3},成片里都用 LaTeX 重新排了,和原图一致。
Q:不懂双曲几何能用吗? A:能。提示词里我们一个术语都没写,是它从图里认出 {7,3} 双曲镶嵌的。想弄懂原理再去看代码和注释。
Q:参考图是竖的,成片为什么是横的? A:没在提示词里说画幅时,它用的是项目当前的 854×480。它自己的第三条建议就是改成竖屏,点一下就行。
Q:能换成别的镶嵌吗? A:它给的第二条建议就是换成 {5,4} 或 {8,3}。代码开头也有 P, Q = 7, 3 这一行。
Q:生成的代码能拿到本地用吗? A:能。写的是标准 Manim Community 代码,复制出去本地装好 Manim 就能跑。
来源:极坐标⋅XYZ(jizuobiao.xyz),2026 年 9 月 14 日更新。文中的步骤、行数、帧数和积分数,均取自当次操作的录屏。