Back to Manim

v0.12.0

docs/source/changelog/0.12.0-changelog.rst

0.20.17.0 KB
Original Source

v0.12.0


:Date: November 02, 2021

Contributors

A total of 40 people contributed to this release. People with a '+' by their names authored a patch for the first time.

  • Anima. +
  • Arcstur +
  • Benjamin Hackl
  • Christopher Besch
  • Darylgolden
  • David Yang +
  • Dhananjay Goratela +
  • Ethan Rooke +
  • Eugene Chung +
  • GameDungeon
  • Gustav-Rixon +
  • Jan-Hendrik Müller
  • Josiah Winslow +
  • Laith Bahodi
  • Martmists +
  • Michael Hill +
  • Naveen M K
  • Nick +
  • NotWearingPants +
  • Peeter Joot +
  • Ryan McCauley
  • Viicos +
  • heitor +
  • icedcoffeeee
  • kieran-pringle +
  • Виктор Виктор +

The patches included in this release have been reviewed by the following contributors.

  • Alex Lembcke
  • Anima.
  • Benjamin Hackl
  • Christopher Besch
  • Darylgolden
  • David Yang
  • Dhananjay Goratela
  • Ethan Rooke
  • Eugene Chung
  • Gustav-Rixon
  • Hugues Devimeux
  • Jan-Hendrik Müller
  • Jason Villanueva
  • Laith Bahodi
  • Mysaa
  • Naveen M K
  • Nick
  • Oliver
  • Ryan McCauley
  • Viicos
  • icedcoffeeee
  • kieran-pringle

Pull requests merged

A total of 52 pull requests were merged for this release.

Highlights

  • :pr:1812: Implemented logarithmic scaling for :class:~.NumberLine / :class:~.Axes This implements scaling bases that can be passed to the scaling keyword argument of :class:.NumberLine. See :class:.LogBase (for a logarithmic scale) and :class:.LinearBase (for the default scale) for more details and examples.

  • :pr:2152: Introduced API for scene sections via :meth:.Scene.next_section Sections divide a scene into multiple parts, resulting in multiple output videos (when using the --save_sections flag). The cuts between two sections are defined by the user in the :meth:~.Scene.construct method. Each section has an optional name and type, which can be used by a plugin (see an example <https://github.com/ManimEditorProject/manim_editor>__). You can skip rendering specific sections with the skip_animations keyword argument.

Deprecated classes and functions

  • :pr:1926: OpenGL: changed submobjects to be a property

  • :pr:2245: Removed deprecated method get_center_point and parameters azimuth_label_scale, number_scale_value, label_scale, scale_factor, size, x_min, x_max, delta_x, y_min, y_max, delta_y

  • :pr:2187: Renamed get_graph and its variants to :meth:~.CoordinateSystem.plot

  • :pr:2065: Deprecated :class:~.FullScreenFadeRectangle and :class:~.PictureInPictureFrame

New features

  • :pr:2025: Implemented :meth:.CoordinateSystem.input_to_graph_coords and fixed :meth:.CoordinateSystem.angle_of_tangent

  • :pr:2151: Added option to set the input file from a config file

  • :pr:2128: Added keyword arguments match_center, match_width etc. to :meth:.Mobject.become

  • :pr:2162: Implemented :meth:.MovingCamera.auto_zoom for automatically zooming onto specified mobjects

  • :pr:2236: Added skip_animations argument to :meth:.Scene.next_section

  • :pr:2196: Implemented :meth:.Line3D.parallel_to and :meth:.Line3D.perpendicular_to

Enhancements

  • :pr:2138: Fixed example for :meth:~.Vector.coordinate_label and added more customization for :class:~.Matrix

    • Additional keyword arguments for :meth:~.Vector.coordinate_label are passed to the constructed matrix.
    • :class:~.Matrix now accepts a bracket_config keyword argument.
  • :pr:2139: Changed the color of :class:~.NumberLine from LIGHT_GREY to WHITE

  • :pr:2157: Added :meth:.CoordinateSystem.plot_polar_graph

  • :pr:2243: Fixed wasteful recursion in :meth:.Mobject.get_merged_array

  • :pr:2205: Improved last frame output handling for the OpenGL renderer

  • :pr:2172: Added should_render attribute to disable rendering mobjects

  • :pr:2182: Changed the default width of videos in Jupyter notebooks to 60%

Fixed bugs

  • :pr:2244: Fixed :meth:.CoordinateSystem.get_area when using few plot points and a boundary graph

  • :pr:2232: Fixed :class:.Graph stopping to update after animating additions/deletions of vertices or edges

  • :pr:2142: Fixed issue with duplicates in OpenGL family and added tests

  • :pr:2168: Fixed order of return values of :func:.space_ops.cartesian_to_spherical

  • :pr:2160: Made projection shaders compatible with :class:.StreamLines

  • :pr:2140: Fixed passing color lists to :meth:.Mobject.set_color for the OpenGL renderer

  • :pr:2211: Fixed animations not respecting the specified rate function

  • :pr:2161: Fixed IndexOutOfBoundsError in TeX logging

  • :pr:2148: Fixed :class:~.Arrow tip disorientation with :meth:.Line.put_start_and_end_on

  • :pr:2192: Fixed :func:.svg_path.string_to_numbers sometimes returning strings

  • :pr:2185: Fixed type mismatch for height and width parameters of :class:~.Text

  • :pr:2228: Added a new boolean operation example to the gallery

  • :pr:2239: Removed erroneous raw string from text tutorial

  • :pr:2184: Moved comments in :class:~.VMobject to documentation

  • :pr:2217: Removed superfluous dots in documentation of :class:.Section

  • :pr:2215: Fixed typo in docstring of :meth:.ThreeDAxes.get_z_axis_label

  • :pr:2212: Fixed Documentation for Sections

  • :pr:2201: Fixed a typo in the documentation

  • :pr:2165: Added Crowdin configuration and changed source files to .pot format

  • :pr:2130: Transferred troubleshooting installation related snippets from Discord to the documentation

  • :pr:2176: Modified :meth:.Mobject.set_default example to prevent leaking across the docs

Changes concerning the testing system

  • :pr:2197: Added tests for resolution flag

  • :pr:2146: Increased test coverage for OpenGL renderer

Changes to our development infrastructure

  • :pr:2191: Removed add-trailing-comma pre-commit hook

Code quality improvements and similar refactors

  • :pr:2136: Added type hints to all colors

  • :pr:2220: Cleanup: let Scene.renderer.time return something that makes sense

  • :pr:2222: Updated Classifiers in pyproject.toml: removed Python 3.6, added Python 3.9

  • :pr:2213: Removed redundant partial_movie_files parameter in :meth:.SceneFileWriter.combine_to_movie

  • :pr:2200: Addressed some maintenance TODOs

    • Changed an Exception to ValueError
    • Fixed :meth:.MappingCamera.points_to_pixel_coords by adding the mobject argument of the parent
    • Rounded up width in :class:.SplitScreenCamera
    • Added docstring to :meth:.Camera.capture_mobject
  • :pr:2194: Added type hints to :mod:.utils.images

  • :pr:2171: Added type hints to :mod:.utils.ipython_magic

  • :pr:2164: Improved readability of regular expression

New releases

  • :pr:2247: Prepared new release v0.12.0