Manim 是一个用 Python 编程构建数学动画的工具,可将场景渲染为视频文件,对每个视觉元素提供精确控制。
用途:制作数学动画与可视化,适合数学讲解、公式演示、函数图像及 3D 场景等。
主要能力:定义继承自 Scene(3D 用 ThreeDScene)的场景类并实现 construct();创建 Mobject,包括几何图形(Circle、Square、Line、Arrow、Polygon)、文本(Text、MathTex、Tex)、图表(Axes、NumberPlane、FunctionGraph)、3D 对象(Sphere、Cube、ThreeDAxes)及组合用的 VGroup;通过 self.play() 播放动画,如 Create、Write、FadeIn、GrowFromCenter、Transform、ReplacementTransform、MoveToTarget、Indicate、Flash、Circumscribe、FadeOut、Uncreate 等。
使用方式:用 CLI 渲染,如 manim -pql scene.py MyScene、manim -pqh scene.py SceneName、manim -s scene.py SceneName;质量标志有 -ql、-qm、-qh、-qk。动画可设置 run_time、rate_func,并支持同时、顺序(Succession)与错峰(LaggedStart)播放。位置可用 move_to、shift、next_to、align_to。
限制与注意事项:Transform 会改变第一个对象,需引用 a;可用 ReplacementTransform 替代。Mobject 可变,必要时用 .copy()。LaTeX 公式需 r 前缀,如 MathTex(r"\frac{1}{2}")。3D 必须使用 ThreeDScene。self.add() 为即时显示,动画出现需用 self.play(FadeIn(...))。详细 API 与快速查询见 references/api.md 与 references/quick-reference.md。