跳转至

v0.19.1

2025 年 12 月 1 日

新功能

  • 在 random_color 方法中引入 seed 参数,以确定性地生成颜色 —— 由 @ishu9bansal 在 #4265 中实现
  • 为 ValueTracker 添加算术运算符支持,包括 //、%、*、** 和 / —— 由 @fmuenkel 在 #4351 中实现
  • 新增 TangentialArc 图形对象 —— 由 @Brainsucker92 在 #4469 中实现

错误修复与功能增强

  • 修复 Tex() 图形对象的环境格式问题 —— 由 @fmuenkel 在 #4159 中实现
  • 提升 rate_function 实现的一致性 —— 由 @BenKirkels 在 #4144 中实现
  • 使新的 Code 图形对象兼容 OpenGL 渲染器 —— 由 @behackl 在 #4164 中实现
  • 修复 ManimColor 中 HSL 颜色顺序问题 —— 由 @thehugwizard 在 #4202 中实现
  • 修复 Polygram.get_vertex_groups() 的返回类型,并重命名 .round_corners() 中的变量 —— 由 @chopan050 在 #4063 中实现
  • 改进 Mobject.align_data 的文档字符串 —— 由 @irvanalhaq9 在 #4152 中实现
  • 修复当 vmobject 为 self 时,:meth:VMobject.pointwise_become_partial 失败的问题 —— 由 @irvanalhaq9 在 #4193 中实现
  • 修复 add_points_as_corners 未将单点连接到现有路径的问题 —— 由 @irvanalhaq9 在 #4219 中实现
  • 为 logger_utils.py 添加完整的类型提示 —— 由 @fmuenkel 在 #4134 中实现
  • 允许 Graph/DiGraph 使用任意 Line 子类作为 edge_type —— 由 @Akshat-Mishra-py 在 #4251 中实现
  • 在 Animation、ShowPartial、Create、ShowPassingFlash 和 DrawBorderThenFill 中替换异常、移除未使用的参数并修复类型提示 —— 由 @irvanalhaq9 在 #4214 中实现
  • 修复:Axes 子对象颜色未正确设置的问题 —— 由 @ishu9bansal 在 #4291 中实现
  • 重构 Rotating 并为 Mobject.rotate() 和 Rotating 添加文档字符串 —— 由 @irvanalhaq9 在 #4147 中实现
  • 修复 manim init project 的默认配置,使用正确的 pixel_height 和 pixel_width —— 由 @StevenH34 在 #4213 中实现
  • 处理不透明度和透明图像 —— 由 @henrikmidtiby 在 #4313 中实现
  • 当版本元数据缺失时优雅地回退 —— 由 @mohiuddin-khan-shiam 在 #4324 中实现
  • 修复 issue 4255 - 当曲线数量为零时不要清除点 —— 由 @henrikmidtiby 在 #4320 中实现
  • 使用 utf-8 编码读取生成的 .tex 文件 —— 由 @OliverStrait 在 #4334 中实现
  • 在 get_mobject_key 中为 vmobject 点添加零以消除负零 —— 由 @elshorbagyx 在 #4332 中实现
  • 确保 SVGMobject 的 stroke_width 属性不会被设置为 None —— 由 @henrikmidtiby 在 #4319 中实现
  • 修复 Prism 在 OpenGL 中使用 dimensions=[2, 2, 2] 时渲染不正确的问题 —— 由 @ra1u 在 #4003 中实现
  • 修复 BraceLabel.change_label() 并文档化 BraceText —— 由 @henrikmidtiby 在 #4347 中实现
  • 在 hash 中纳入 Text.gradient 以便在渐变改变时正确重新生成 Text —— 由 @AbhilashaTandon 在 #4099 中实现
  • 修复 OpenGL 中的曲面动画 —— 由 @nubDotDev 在 #4286 中实现
  • 为 ValueTracker 添加类型提示并支持算术运算符 + 和 - —— 由 @fmuenkel 在 #4129 中实现
  • 修复 ReplacementTransform 后 Scene.mobjects 中出现重复引用的问题 —— 由 @irvanalhaq9 在 #4242 中实现
  • 通过减少 Mobject.become() 中的 Mobject 复制操作优化 always_redraw() —— 由 @chopan050 在 #4357 中实现
  • 增强 manim cfg show 输出并添加配置文件的 info 级日志记录 —— 由 @xnov18 在 #4375 中实现
  • 让 Cube 使用 Bevel 类型线条连接 —— 由 @nubDotDev 在 #4361 中实现
  • 正确定义 init_points 方法以供 OpenGL 使用,而不是定义 init_points = generate_points —— 由 @chopan050 在 #4360 中实现
  • 允许向 SurroundingRectangle 传递元组类型的 buff 以独立指定 x 和 y 方向的缓冲 —— 由 @nubDotDev 在 #4390 中实现
  • 重写 color_gradient 使其始终返回 ManimColors 列表 —— 由 @henrikmidtiby 在 #4380 中实现
  • 确保前导空格不会改变 CodeMobject 中各行的高度 —— 由 @behackl 在 #4392 中实现
  • 简化 text_mobject.py 中的 remove_invisible_chars 函数 —— 由 @henrikmidtiby 在 #4394 中实现
  • 修复通过 --config_file 指定的一些配置选项未被正确应用的问题 —— 由 @behackl 在 #4401 中实现
  • 修复:将正确的分辨率元组顺序改为 (height, width) —— 由 @Nikhil172913832 在 #4440 中实现
  • 确保 Line3D 的起点和终点以浮点值存储 —— 由 @SirJamesClarkMaxwell 在 #4080 中实现
  • OpenGL:修复 DecimalNumber.set_value 中的迭代嵌套问题 —— 由 @henrikmidtiby 在 #4373 中实现
  • 更新 CLI 中的默认分辨率以匹配 Manim 的 1920x1080 默认设置 —— 由 @SASHAKT1290 在 #4452 中实现
  • 改进 CodeMobject 中的颜色样式解析 —— 由 @SirJamesClarkMaxwell 在 #4454 中实现
  • 允许使用 '*' 选择所有场景进行渲染 —— 由 @NightyStudios 在 #4470 中实现
  • 防止在 apply_points_function_about_point 中改变 about_point —— 由 @Morkunas 在 #4478 中实现
  • 修复 Mobject.suspend_updating 的行为:仅暂停父级 mobject 时,让子级继续更新 —— 由 @behackl 在 #4402 中实现
  • 允许向 LabeledDot 传递 buff 参数 —— 由 @nubDotDev 在 #4403 中实现
  • 将 ndarrays 传递给 mapbox_earcut.triangulate_float32() 以修复 mapbox_earcut==2.0.0 中的 TypeError —— 由 @GuiCT 在 #4479 中实现
  • 修复 DashedVMobject 中重复的箭头尖端(issue #3220)—— 由 @jakekinchen 在 #4484 中实现

文档

  • 为 :meth:.Mobject.get_family 添加文档字符串 —— 由 @irvanalhaq9 在 #4127 中实现
  • 修复 index.rst 中的链接格式,并澄清不同 Manim 版本的区别 —— 由 @irvanalhaq9 在 #4131 中实现
  • 在 MacOS 上添加通过 Homebrew 安装系统工具 cairo 和 pkg-config 的说明 —— 由 @behackl 在 #4146 中实现
  • 为行为准则的利益冲突政策添加缺失的换行 —— 由 @Hasan-Mesbaul-Ali-Taher 在 #4185 中实现
  • 修复 Pango 网站的链接 —— 由 @ragibson 在 #4217 中实现
  • 在 README 中用 uv 替换 poetry —— 由 @xinoehp512 在 #4226 中实现
  • 改进 Mobject 类中 interpolate 方法的文档字符串 —— 由 @irvanalhaq9 在 #4149 中实现
  • 为 Line 添加文档字符串,并为 path_arc 参数移除 None 处理 —— 由 @irvanalhaq9 在 #4223 中实现
  • 为 :meth:Mobject.family_members_with_points 添加文档字符串 —— 由 @irvanalhaq9 在 #4128 中实现
  • 修复 :attr:ManimConfig.gui_location 属性的错误文档字符串 —— 由 @SAYAN02-DEV 在 #4254 中实现
  • 修复颜色空间文档的格式 —— 由 @behackl 在 #4274 中实现
  • 改进并重新表述 README.md 中关于 ManimCE 的描述 —— 由 @irvanalhaq9 在 #4141 中实现
  • docs:在自定义动画中添加关于 rate_func 的说明 —— 由 @pedropxoto 在 #4278 中实现
  • 修复 Animation 文档字符串中的问题 —— 由 @barollet 在 #4283 中实现
  • 在 .add_updater 示例中将更新函数名从 dot_position 重命名为 update_label —— 由 @irvanalhaq9 在 #4196 中实现
  • 修复 example_scenes/advanced_tex_fonts.py 中 TexFontTemplateLibrary 场景的 Microsoft 拼写错误 —— 由 @alterdim 在 #4305 中实现
  • 提升可读性和语法,并添加文档字符串以保持一致性 —— 由 @NASAnerd05 在 #4267 中实现
  • 为 ChangingDecimal 和 ChangeDecimalToValue 添加文档字符串 —— 由 @haveheartt 在 #4346 中实现
  • 修复通过 latex / pdf 构建文档时的 Sphinx 异常 —— 由 @behackl 在 #4370 中实现
  • 在文档首页添加许可证信息 —— 由 @Nikil-D-Gr8 在 #3986 中实现
  • 在 uv 安装指南中将默认 Python 版本设置为 3.13 —— 由 @henrikmidtiby 在 #4480 中实现