v0.7.0

Date:

2021年6月1日

贡献者

共有45人参与了此版本的贡献。名字旁边带有“+”的人是首次提交补丁的作者。

  • 安德烈 +

  • 安东·巴尔迈尔

  • 本杰明·哈克尔

  • Clar Fon

  • Darylgolden

  • 德文·尼尔

  • Hugues Devimeux

  • 冰茶3 +

  • 扬-亨德里克·穆勒

  • 杰森·维拉纽瓦

  • 杰罗尼莫·斯夸蒂尼 +

  • KingWampy

  • 莱斯·巴霍迪

  • 马克斯·斯托门 +

  • 穆罕默德·阿尔-费特亚尼

  • 纳文·M·K

  • 新柏拉图

  • 纽厄尔·詹森

  • 尼基尔·加鲁达

  • 尼基尔·夏尔马 +

  • 保罗·C·默多克 +

  • 菲利普·伊姆霍夫

  • 拉加夫·戈尔

  • 罗伯特·韦斯特 +

  • 瑞安·麦考利 +

  • Skaft +

  • SwiddisZwei +

  • e4coder +

  • friedkeenan

  • malte-v +

  • ralphieraccoon

  • sparshg

此版本中包含的补丁已由以下贡献者审核。

  • Aathish Sivasubrahmanian

  • 阿比吉特·穆提亚拉

  • 安东·巴尔迈尔

  • Aron

  • 本杰明·哈克尔

  • Darylgolden

  • 德文·尼尔

  • 游戏地牢

  • Hugues Devimeux

  • 冰茶3

  • 扬-亨德里克·穆勒

  • 杰森·维拉纽瓦

  • 杰罗尼莫·斯夸蒂尼

  • KingWampy

  • 莱斯·巴霍迪

  • 马克·米勒

  • 穆罕默德·阿尔-费特亚尼

  • 纳文·M·K

  • 尼基尔·加鲁达

  • 奥利弗

  • 菲利普·伊姆霍夫

  • 拉加夫·戈尔

  • Ricky Chon

  • 瑞安·麦考利

  • Skaft

  • SwiddisZwei

  • e4coder

  • friedkeenan

  • ralphieraccoon

  • sparshg

合并的拉取请求

本次发布共合并了87个拉取请求。

重大变更

  • #1521: Improve Animation docs
    • 改进Animation类的文档。

    • 统一get_all_mobjects的签名。现在它总是返回一个Mobjects的序列。这打破了使用FadeTransform.get_all_mobjects作为Group的方式。

  • #1470: Drop support for Python 3.6

    Manim 将不再支持 Python 3.6。

亮点

  • #1447: 添加了用于极坐标的PolarPlane

  • #1490: Added Polygram, rework the polygon inheritance tree, and add Star
  • #1462: OpenGL: Added Shader, Mesh, and FullScreenQuad

    添加着色器和网格对象

  • #1418: Added project management commands
    • manim init - 快速设置manim项目的默认文件。

    • manim new project - 让用户设置项目设置。它还在名为的新文件夹中创建项目。

    • manim new scene - 用于快速将新场景插入文件中。如果未提供file name,则默认使用main.py

已弃用的类和函数

  • #1598: Update examples to use Axes and deprecate GraphScene

    GraphScene 已被弃用,其功能已转移到 Axes。请参阅更新的示例库以查看示例用法。

  • #1454: Fading module enhancements

    将所有Fading类的功能移至FadeInFadeOut。所有其他Fading类已被弃用。

  • #1375: 删除了已弃用的 ShowCreation,改用 创建

新功能

  • #1566: 增加了向Rectangle添加网格线的功能

  • #1548: 添加了ArcBrace,它是Brace的一个子类。

  • #1559: Update VGroup to support item assignment (#1530)

    支持VGroup的索引项分配

  • #1518: 允许在一个动画中淡出多个Mobjects

  • #1422: 添加了 override_animation() 装饰器

  • #1504: Color module enhancements
    • BLUE_E替换为之前DARK_BLUE的内容,并删除了DARK_BLUE

    • GRAY_A添加了别名LIGHTER_GRAY

    • 添加了PURE_REDPURE_BLUE并将GREEN_SCREEN重命名为PURE_GREEN

    • 所有灰色现在也可以使用英式拼写(包括GREY_BROWN

    • 替换了文档中的颜色示例。现在它可以作为所有颜色名称的快速参考。

  • #1272: 在几何模块中实现元类方法,使mobjects与cairo和opengl渲染兼容

  • #1404: Added two deprecation decorators

    添加了两个函数装饰器 deprecateddeprecated_params 作为弃用代码的一致方式。

增强功能

  • #1572: 通过元类实现OpenGL兼容性: TracedPath, ParametricFunction, Brace, VGroup

  • #1472: 将方法从 GraphScene 移植到 CoordinateSystem

  • #1589: 通过元类实现OpenGL兼容性: ValueTracker

  • #1564: Add extra notes for TeX compilation errors

    在TeX编译错误时添加提示以使用自定义TexTemplate

  • #1584: 在round_corners()中添加了对0的检查

  • #1586: Add OpenGLMobject support to all isinstance occurrences

    此PR增加了对OpenGL的支持,适用于剩余的动画类以及其他适当的地方。

  • #1577: 添加了新的元类 ConvertToOpenGL(替换 MetaVMobject),恢复了 IntelliSense

  • #1562: Improved VectorField’s Nudge Accuracy Per Step

    在VectorField的nudge函数中实现了Runge-Kutta算法。这提高了物体沿矢量场移动时的准确性。这也提高了效率,因为与之前的实现相比,nudge函数需要更少的循环来达到准确性。

  • #1480: 向tex错误添加日志信息

  • #1567: Compatibility Fixes with ManimPango v0.3.0
    • Manim现在需要ManimPango v0.3.0+版本。

    • 当标记不正确时显示来自Pango的错误

  • #1512: 通过元类实现OpenGL兼容性:图表

  • #1511: 通过元类实现OpenGL兼容性:svg_mobject, text_mobject, tex_mobject

  • #1502: 添加了 center 参数到 Spherepoint 参数到 Dot3D

  • #1486: Update of rate_functions

    更改了非标准速率函数的图片。

  • #1495: 将value_tracker移植到OpenGL

  • #1382: Expand documentation, testing, and functionality of ValueTrackers; remove ExponentialValueTracker

    为ValueTracker和ComplexValueTracker添加了更多文档和内联操作符。将value_tracker.py的覆盖率提高到100%。移除了ExponentialValueTracker。

  • #1475: 添加SVG椭圆弧支持

修复的bug

  • #1574: 修复了处理省略椭圆弧命令的SVG时的错误

  • #1596: Fix indexing for non-whitespace tex arg separator

    修复 #1568

    修复了将Tex对象的arg_separator设置为非空白字符时的问题。方法break_up_by_substrings(self)在设置索引时未考虑分隔符。

  • #1588: 修复了多个动画保存在同一文件中的问题

  • #1571: 引入并行化后修复测试

  • #1545: 修复LinearTransformationScene的过时参数并添加示例和类型注解。

  • #1513: Fixed rotation of gradients while rotating a VMobject
    • 修复了在旋转VMobjects时渐变方向保持不变的问题

    • 在VMobject中添加了rotate_sheen_direction()方法

  • #1570: 将错误输出到stderr

  • #1560: 在 .gitattributes 中将 *.npz *.wav *.png 声明为二进制文件

  • #1211: Refactored scene caching and fixed issue when a different hash was produced when copying a mobject in the scene

    重构了内部场景缓存机制,并修复了在复制mobject时产生不一致哈希值的错误。

  • #1527: 改进了在sqrt内处理子字符串隔离的方式,并修复了transform_mismatch在匹配形状变换时的错误

  • #1526: 修复淡出效果

  • #1523: 修复多个FadeIn / Out仅在VMobjects上工作的问题

关于测试系统的更改

  • #1556: 尝试在测试中使用 pytest-xdist 进行并行化

我们的开发基础设施的变化

  • #1505: Add docs reference to PR template

    在拉取请求模板中添加了文档链接。

  • #1499: 更新了文档中的Discord链接,使其指向标准化的重定向

  • #1461: 构建文档 - 日志记录

  • #1481: pyproject.toml: poetry_core -> poetry-core

  • #1477: 更新RDT sphinx包到版本3.5.3

  • #1460: 创建 CONTRIBUTING.md

  • #1453: manim_directive: fix image links in docs - Windows

    在Windows上使用POSIX路径链接图像,以便文档可以在本地构建。

代码质量改进和类似的重构

  • #1465: 为coordinate_systems中的一些函数添加了类型和描述。

  • #1552: Removed unwanted parameters in geometry

    移除了 anchors_span_full_range, close_new_points, anchors_span_full_range, preserve_tip_size_when_scaling, mark_paths_closedclose_new_points

  • #1597: 从全局命名空间中移除了hilite_me和insert_line_numbers_in_html

  • #1535: 更新依赖项并修复测试

  • #1544: 添加拼写检查器作为预提交钩子

  • #1542: 在文档中交换一个pango标记链接

  • #1531: 不要在deprecation.py中使用已弃用的方法

  • #1492: 移除在#1404中引入的杂散打印语句

  • #1471: 修复来自lgtm的一些警告

需要再次撤销的更改

  • #1606: 恢复 DARK_BLUE

新版本

  • #1601: 准备 v0.7.0 版本:添加了变更日志并提升了版本号