跳转到主要内容

解释性数学视频的动画引擎。

项目描述



PyPI Latest Release Docker image MIT License Reddit Twitter Discord Code style: black Documentation Status Downloads CI

解释性数学视频的动画引擎。


Manim是一个用于解释性数学视频的动画引擎。它用于以编程方式创建精确的动画,如3Blue1Brown的视频中所示。

注意:此存储库由 Manim 社区维护,与 Grant Sanderson 或 3Blue1Brown 没有任何关联(尽管我们确实对他的作品惠赠世界表示感谢)。如果您想学习 Grant 如何制作他的视频,请访问他的存储库(3b1b/manim)。此分支比他的更新更频繁,如果您想在自己的项目中使用 Manim,建议使用此分支。

目录

安装

警告:以下说明仅适用于社区版本。尝试使用这些说明安装3b1b/manim或其中的说明安装此版本将导致问题。请阅读此内容并决定您想安装哪个版本,然后只遵循您希望安装的版本的说明。

Manim 需要一些依赖项,在使用之前必须安装。如果您想先尝试使用它,然后再在本地安装,您可以在我们的在线 Jupyter 环境中这样做。

对于本地安装,请访问文档并遵循适用于您操作系统的相应说明。

用法

Manim 是一个极其灵活的包。以下是一个您可以构建的 Scene 示例

from manim import *


class SquareToCircle(Scene):
    def construct(self):
        circle = Circle()
        square = Square()
        square.flip(RIGHT)
        square.rotate(-3 * TAU / 8)
        circle.set_fill(PINK, opacity=0.5)

        self.play(Create(square))
        self.play(Transform(square, circle))
        self.play(FadeOut(square))

要查看此场景的输出,请将代码保存在名为 example.py 的文件中。然后,在终端窗口中运行以下命令

manim -p -ql example.py SquareToCircle

您应该会看到您本地的视频播放器程序弹出并播放一个简单的场景,其中正方形被转换为圆形。您可以在本GitHub 存储库中找到更多简单示例。您还可以访问官方画廊以获取更多高级示例。

Manim 还附带了一个 %%manim IPython 魔法命令,它允许您在 JupyterLab(以及经典 Jupyter)笔记本中方便地使用它。有关指导和在线尝试,请参阅相应文档

命令行参数

Manim 的一般用法如下

manim-illustration

上述命令中的 -p 标志用于预览,意味着渲染完成后将自动打开视频文件。-ql 标志用于以较低质量进行快速渲染。

一些其他有用的标志包括

  • -s 跳到末尾并仅显示最终帧。
  • -n <number> 跳到场景的第 n 个动画。
  • -f 在文件浏览器中显示文件。

有关命令行参数的完整列表,请访问文档

文档

文档正在ReadTheDocs上进行中。

Docker

社区还维护了一个 Docker 镜像(manimcommunity/manim),您可以在DockerHub上找到它。有关安装和使用它的说明,请参阅我们的文档

Manim 帮助

如果您需要安装或使用 Manim 的帮助,请随时联系我们的Discord 服务器Reddit 社区。如果您想提交错误报告或功能请求,请打开一个问题。

贡献

对 Manim 的贡献总是受欢迎的。特别是,测试和文档的需求迫切。有关贡献指南,请参阅文档

然而,请注意,Manim 目前正在进行重大重构。一般来说,在此期间不接受实现新功能的贡献。贡献指南可能会很快过时;我们强烈建议您加入我们的 Discord 服务器,以讨论任何潜在的贡献,并跟上最新的发展。

项目上的大多数开发者使用 poetry 进行管理。您需要确保您的环境中已安装并可用 poetry。更多关于 poetry 的信息,请参阅其 文档,并了解如何使用 poetry 安装 manim,请参阅 manim 文档中的 manim 开发安装指南

如何引用 Manim

我们认识到优质软件对于支持研究的重要性,并指出,当研究得到有效沟通时,其价值会更大。为了展示 Manim 的价值,我们要求您在您的作品中引用 Manim。目前,引用 Manim 的最佳方法是访问我们的 存储库页面(如果您尚未这样做),并点击右侧侧边栏上的“引用此存储库”按钮。这将生成您首选格式的引用,并且与引用管理器的集成良好。

行为准则

我们的完整行为准则以及我们如何执行它,可以在 我们的网站 上阅读。

许可证

该软件采用 MIT 许可证双许可,版权由 3blue1brown LLC 拥有(见 LICENSE),以及 Manim 社区开发者拥有(见 LICENSE.community)。

项目详情


下载文件

下载您平台上的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。

源代码分发

manim-0.18.1.tar.gz (501.6 kB 查看散列)

上传时间 源代码

构建分发

manim-0.18.1-py3-none-any.whl (585.2 kB 查看散列)

上传时间 Python 3

由以下机构支持