v0.16.0¶
- Date:
July 13, 2022
Contributors¶
A total of 44 people contributed to this release. People with a ‘+’ by their names authored a patch for the first time.
Alex Lembcke
Baroudi Aymen +
Benjamin Hackl
Charalampos Georgiou +
Cindy Park +
Ejar +
Francesco Frassinelli +
Francisco Manríquez Novoa +
Jacob Evan Shreve +
Jaime Santos +
Jonathan Alpert
Joshua Mankelow +
Kevin Lubick +
Laith Bahodi
Lingren Kong +
Logen +
Naveen M K
Noam Zaks
Pedro Lamkowski +
Raghav Goel
Simeon Widdis
Sparsh Goenka
TornaxO7 +
Tristan Schulz +
WillSoltas
ad_chaos
conor-oneill-2 +
fcrozatier +
mooncaker816 +
niklebedenko +
nyabkun +
quark67
The patches included in this release have been reviewed by the following contributors.
Alex Lembcke
Benjamin Hackl
Darylgolden
Francesco Frassinelli
Francisco Manríquez Novoa
Gianluca Gippetto
Jan-Hendrik Müller
Jonathan Alpert
Kevin Lubick
Laith Bahodi
Naveen M K
Pedro Lamkowski
Philipp Imhof
Raghav Goel
Ryan McCauley
Sparsh Goenka
TornaxO7
Tristan Schulz
ad_chaos
hickmott99
Pull requests merged¶
A total of 56 pull requests were merged for this release.
Highlights¶
- PR #2550: New thematic guide: a deep dive into the internals of the library
This new thematic guide aims to be a comprehensive walkthrough describing all the things that Manim does when you run it to produce a video.
PR #2732: Improved overall structure of deployed documentation; added a dedicated FAQ section
- PR #2749: Added
ChangeSpeed, an animation wrapper that allows to smoothly change the speed at which an animation is played The speed of any animation can be changed by wrapping the animation with
ChangeSpeedand passing a dictionary asspeedinfowhose keys are the relative animation run time stamps and whose values are the absolute speed factors; e.g.,{0.5: 2, 0.75: 0.25}smoothly speeds up the animation by a factor of 2 once it has been completed to 50%, and then it is smoothly slowed down to 1/4 of the default run speed after 75% of the animation are completed. Therun_timeof the animation will be adjusted to match the changed play speed.It is also possible to add time-based updaters that respect the change in speed, use the auxiliary
ChangeSpeed.add_updater()method to do so.
- PR #2749: Added
New features¶
Enhancements¶
PR #2186: Enabled filling color by value for
OpenGLSurface, replacedcolorskeyword argument ofSurface.set_fill_by_value()withcolorscalePR #2288: Added warning when attempting to add same mobject as child twice
- PR #2707: Fixed missing
get_nth_curve_length_piecesmethod ofOpenGLVMobject Removed duplicate definition of
get_curve_functions_with_lengthsinOpenGLVMobjectAdded definition of
get_nth_curve_length_piecestoOpenGLVMobject
- PR #2707: Fixed missing
PR #2714: Fixed
OpenGLVMobject.pointwise_become_partial()to improve stroke renderingPR #2727: Slight performance improvement for
ArrowVectorFieldand Bézier curve computationPR #2728: Added
VectorField.fit_to_coordinate_system()to fit a vector field to a given coordinate systemPR #2730: Added note to let users find documentation of default CLI subcommand easier
PR #2746: Installed ghostscript in the docker image
PR #2841: Added
split_quadratic_bezier()andsubdivide_quadratic_bezier()PR #2842: CLI: Moved functionality from
manim newtomanim initand added deprecation warning formanim newPR #2866: Reorganize test files to match library module structure
Fixed bugs¶
PR #2567: Use tempconfig for every scene render
PR #2638: Fixed
BarChart.change_bar_values()not updating when height is 0PR #2661: Fixed tip resize functionality for
Axesto match documentationPR #2734: Fixed OpenGL segfaults when running
Scene.play()orScene.wait()in interactive modePR #2753: Fixed multiplatform builds for docker images in pipeline
PR #2770: Fixed bug in
VMobject.proportion_from_point()that caused proportions greater than 1 to be returnedPR #2826: Fixed leaked mobjects coming from
TransformMatchingAbstractBasePR #2870: Fixed issue with
manim init scene SCENE_NAME filename.pyand removed necessity ofmain.pyto be present in working directory
Changes concerning the testing system¶
PR #2743: Replaced
assertstatements with with assertion functions fromnp.testing
Changes to our development infrastructure¶
Code quality improvements and similar refactors¶
PR #2680: Increased minimum required version of
numpyto 1.19PR #2687: Migrated from
os.pathtopathlibinSVGMobjectand other locationsPR #2715: Updated deprecated
pillowconstantsPR #2735: Bump pyjwt from 2.3.0 to 2.4.0
PR #2748: Bump pillow from 9.1.0 to 9.1.1
PR #2751: Fixed flake C417 and improved a comment
PR #2825: Bump notebook from 6.4.11 to 6.4.12
PR #2864: Updated lockfile
New releases¶
PR #2863: Prepared new release,
v0.16.0