Changelog¶
Unreleased¶
Breaking Changes¶
Added
InteractiveScene
(#1794)
Fixed bugs¶
New Features¶
Added specific euler angle getters (#1794)
Added start angle option to
Circle
(#1794)Added
Mobject.is_touching
(#1794)Added
Mobject.get_highlight
(#1794)Allowed for saving and loading mobjects from file (#1794)
Added
Mobject.get_all_corners
(#1794)Added
Scene.id_to_mobject
andScene.ids_to_group
(#1794)Added
Scene.save_mobject
andScene.load_mobject
to allow for saving and loading mobjects from file at the Scene level (#1794)Added
InteractiveScene
(#1794)Added
VHighlight
(#1794)Allowed for sweeping selection (#1796)
Allowed stretched-resizing (#1796)
Added cursor location label (#1796)
Added
Mobject.deserialize
(#1796)Added undo and redo stacks for scene (#1796)
Added
Mobject.looks_identical
(#1802)Added equality for
ShaderWrapper
(#1802)Added
Mobject.get_ancestors
(#1802)Added smarter default radius to
Polygon.round_corners
(#1802)Added checkpoints to
Scene
(#1821)Added
crosshair
toInteractiveScene
(#1821)Added
SceneState
(#1821)Added
time_span
option toAnimation
(#1821)Added
Mobject.arrange_to_fit_dim
(#1821)Added
DecimalNumber.get_tex
(#1821)
Refactor¶
Updated parent updater status when adding updaters (#1794)
Added case for zero vectors on
angle_between_vectors
(#1794)Refactored
Mobject.clear_updaters
(#1794)Changed the way changing-vs-static mobjects are tracked (more details see #1794)
Refactored
Mobject.is_point_touching
(#1794)Refactored
Mobject.make_movable
andMobject.set_animating_status
to recurse over family (#1794)Refactored
AnimationGroup
(#1794)Refactored
Scene.save_state
andScene.restore
(#1794)Added
MANIM_COLORS
(#1794)Changed default transparent background codec to be prores (#1794)
Simplified
Mobject.copy
(#1794)Refactored
StringMobject
and relevant classes (#1795)Updates to copying based on pickle serializing (#1796 <https://github.com/3b1b/manim/commit/fe3e10acd29a3dd6f8b485c0e36ead819f2d937b>)
Removed
refresh_shader_wrapper_id
fromMobject.become
(#1796)Refactored
Scene.embed
to play nicely with gui interactions (#1796)Made
BlankScene
inherit fromInteractiveScene
(#1796)Updated behavior of -e flag to take in (optional) strings as inputs (#1796)
Refactor -e flag (#1796)
Reverted to original copying scheme (#1796)
Renamed
Mobject.is_movable
toMobject.interaction_allowed
(#1796)Refreshed static mobjects on undo’s and redo’s (#1796)
Factored out event handling (#1796)
Removed
Mobject.interaction_allowed
, in favor of using_is_animating
for multiple purposes (#1796)Moved Command + z and Command + shift + z behavior to Scene (#1797)
Slight copy refactor (#1797)
When scene saves state, have it only copy mobjects which have changed (#1802)
Cleaned up
Scene.remove
function (#1802)Speed-ups to
Mobject.copy
(#1802)Slight speed-up to
InteractiveScene.gather_selection
(#1802)Only leave wait notes in presenter mode (#1802)
Refactored
remove_list_redundancies
andlist_update
(#1821)Match updaters in
Mobject.become
(#1821)Don’t show animation progress bar by default (#1821)
Handle quitting during scene more gracefully (#1821)
Made
selection_highlight
refresh with an updater (#1821)Refactored
anims_from_play_args
toprepare_animations
which deprecating old styleself.play(mob.method, ...)
(#1821)Made presenter mode hold before first play call (#1821)
Update frame on all play calls when skipping animations, so as to provide a rapid preview during scene loading (#1821)
Renamed frame_rate to fps (#1821)
Let default text alignment be decided in default_config (#1821)
Dependencies¶
Added dependency on
pyperclip
(#1794)
v1.6.1¶
Fixed bugs¶
Refactor¶
v1.6.0¶
Breaking changes¶
Python 3.6 is no longer supported (#1736)
Fixed bugs¶
New features¶
Added more functions to
Text
(details: #1751)Allowed
interpolate
to work on an array of alpha values (#1764)Allowed
Numberline.number_to_point
andCoordinateSystem.coords_to_point
to work on an array of inputs (#1764)Added a basic
Prismify
to turn a flatVMobject
into something with depth (#1764)Added
GlowDots
, analogous toGlowDot
(#1764)Added
TransformMatchingStrings
which is compatible withText
andMTex
(#1772)Added support for
substring
andcase_sensitive
parameters forLabelledString.get_parts_by_string
(#1780)
Refactor¶
Added type hints (#1736)
Specifid UTF-8 encoding for tex files (#1748)
Refactored
Text
with the latest manimpango (#1751)Reorganized getters for
ParametricCurve
(#1757)Refactored
CameraFrame
to usescipy.spatial.transform.Rotation
(#1764)Refactored rotation methods to use
scipy.spatial.transform.Rotation
(#1764)Used
stroke_color
to initArrow
(#1764)Refactored
Mobject.set_rgba_array_by_color
(#1764)Made panning more sensitive to mouse movements (#1764)
Added loading progress for large SVGs (#1766)
Added getter/setter of
field_of_view
forCameraFrame
(#1770)Renamed
focal_distance
tofocal_dist_to_height
and added getter/setter (#1770)Added getter and setter for
VMobject.joint_type
(#1770)Refactored
VCube
(#1770)Refactored
Prism
to receivewidth height depth
instead ofdimensions
(#1770)Refactored
Text
,MarkupText
andMTex
based onLabelledString
(#1772)Refactored
LabelledString
and relevant classes (#1779)
v1.5.0¶
Fixed bugs¶
Bug fix for the case of calling
Write
on a null object (#1740)
New features¶
Added
TransformMatchingMTex
(#1725)Added
ImplicitFunction
(#1727)Added
Polyline
(#1731)Allowed
Mobject.set_points
to take in an empty list, and addedMobject.add_point
(#1739)Added
Scene.refresh_locked_data
(#1739)Added presenter mode to scenes with
-p
option (#1739 and #1742)Allowed for an embed by hitting
ctrl+shift+e
during interaction (#1739 and #1746)Added
Mobject.set_min_width/height/depth
(#1739)Allowed
Mobject.match_coord/x/y/z
to take in a point (#1739)Added
text_config
toDecimalNumber
(#1744)
Refactor¶
Dependencies¶
v1.4.1¶
Fixed bugs¶
v1.4.0¶
Fixed bugs¶
New features¶
Added option to add ticks on x-axis in
BarChart
(#1694)Added
lable_buff
config parameter forBrace
(#1704)Added support for
rotate skewX skewY
transform in SVG (#1712)Added style support to
SVGMobject
(#1717)Added parser to <style> element of SVG (#1719)
Added support for <line> element in
SVGMobject
(#1719)
Refactor¶
Used
FFMPEG_BIN
instead of"ffmpeg"
for sound incorporation (5aa8d15)Decorated
CoordinateSystem.get_axes
and.get_all_ranges
as abstract method (#1709)Refactored SVG path string parser (#1712)
Allowed
Mobject.scale
to receive iterablescale_factor
(#1712)Refactored
MTex
(#1716)Improved config helper (
manimx --config
) (#1721)Refactored
MTex
(#1723)
Dependencies¶
Added dependency on python package cssselect2 (#1719)
v1.3.0¶
Fixed bugs¶
Fixed
Mobject.stretch_to_fit_depth
(#1653)Fixed the bug of rotating camera (#1655)
Fixed
SurfaceMesh
to be evenly spaced (c73d507)Fixed
angle_between_vectors
addrotation_between_vectors
(82bd02d)Fixed
VMobject.fade
(a717314)Fixed
angle_between_vectors
(fbc329d)Fixed bug in
ShowSubmobjectsOneByOne
(bcd0990)Fixed bug in
TransformMatchingParts
(7023548)
New features¶
Added CLI flag
--log-level
to specify log level (e10f850)Added operations (
+
and*
) forMobject
(#1667)Added 4 boolean operations for
VMobject
inmanimx/mobject/boolean_ops.py
(#1675)Union(*vmobjects, **kwargs)
Difference(subject, clip, **kwargs)
Intersection(*vmobjects, **kwargs)
Exclusion(*vmobjects, **kwargs)
Added reflectiveness (81c3ae3)
Enabled
glow_factor
onDotCloud
(2c7689e)Added option
-e
to insert embed line from the command line (d065e19)Improved
point_from_proportion
to account for arc length (0e78027)Added shortcut
set_backstroke
for setting black background stroke (781a993)Added
Suface.always_sort_to_camera
(0b898a5)Added getter methods for specific euler angles (e899604)
Hade
rotation_between_vectors
handle identical/similar vectors (407c53f)Added
Mobject.insert_submobject
method (49743da)Created single progress display for full scene render (9dd1f47)
Added
Circle.get_radius
(264f7b1)Added
Dodecahedron
(83841ae)Added
GlowDot
(a1d5147)
Refactor¶
Refactored support for command
A
in path of SVG (#1662)Refactored
SingleStringTex.balance_braces
(#1662)Slight tweaks to how saturation_factor works on newton-fractal (8b454fb)
Made it possible to set full screen preview as a default (317a5d6)
Used
quick_point_from_proportion
for graph points (e764da3)Made sure
Line.set_length
returns self (d2182b9)Better align
SurfaceMesh
to the corresponding surface polygons (eea3c6b)Match
fix_in_frame
status forFlashAround
mobject (ee1594a)Made sure
Mobject.is_fixed_in_frame
stays updated with uniforms (ba23fbe)Made sure
skip_animations
andstart_at_animation_number
play well together (98b0d26)Updated progress display for full scene render (f8e6e7d)
VectorizedPoint
should call__init__
for both super classes (8f1dfab)Used array copy when checking need for refreshing triangulation (758f329)
Dependencies¶
Added dependency on python package skia-pathops (#1675)
v1.2.0¶
Fixed bugs¶
Fixed
put_start_and_end_on
in 3D (#1592)Fixed
DecimalNumber
’s scaling issue (#1601)Fixed bug with common range array used for all coordinate systems (56df154)
Fixed
CoordinateSystem
init bug (8645894)Fixed bug for single-valued
ValueTracker
(0dc096b)Fixed bug with SVG rectangles (54ad355)
Fixed
DotCloud.set_radii
(d45ea28)Temporarily fixed bug for
PMobject
array resizing (b543cc0)Fixed
match_style
(5f878a2)Fixed negative
path_arc
case (719c81d)Fixed bug with
CoordinateSystem.get_lines_parallel_to_axis
(c726eb7)Fixed
ComplexPlane
-i display bug (7732d2f)
New features¶
Supported the elliptical arc command
A
forSVGMobject
(#1598)Added
FlashyFadeIn
(#1607)Save triangulation (#1607)
Added new
Code
mobject (#1625)Add warnings and use rich to display log (#1637)
Added
VCube
(bd356da)Supported
ValueTracker
to track vectors (6d72893)Added
set_max_width
,set_max_height
,set_max_depth
toMobject
(3bb8f3f)Added
TracgTail
(a35dd5a)Added
Scene.point_to_mobject
(acba13f)Added poly_fractal shader (f84b8a6)
Added kwargs to
TipableVMobject.set_length
(b24ba19)Added
Mobject.replicate
(17c2772)Added mandelbrot_fractal shader (33fa76d)
Saved state before each embed (f22a341)
Allowed releasing of Textures (e10a752)
Consolidated and renamed newton_fractal shader (14fbed7)
Hade
ImageMoject
remember the filepath to the Image (6cdbe0d)
Refactor¶
Changed back to simpler
Mobject.scale
implementation (#1601)Simplified
Square
(b667db2)Removed unused parameter
triangulation_locked
(40290ad)Reimplemented
Arrow
(8647a64)Used
make_approximately_smooth
forset_points_smoothly
by default (d8378d8)Refactored to call
_handle_scale_side_effects
after scaling takes place (7b4199c)Refactored to only call
throw_error_if_no_points
once forget_start_and_end
(7356a36)Made sure framerate is 30 for previewed scenes (0787c4f)
Pushed
pixel_coords_to_space_coords
toWindow
(c635f19)Refactored to pass tuples and not arrays to uniforms (d5a88d0)
Refactored to copy uniform arrays in
Mobject.copy
(9483f26)Added
bounding_box
as exceptional key to point_cloud mobject (ed1fc4d)Made sure stroke width is always a float (329d2c6)
v1.1.0¶
Fixed bugs¶
Fixed the bug of
resize_with_interpolation()
in the case oflength=0
Fixed the bug of
__init__
inElbow
If chosen monitor is not available, choose one that does exist
Make sure mobject data gets unlocked after animations
Fixed a bug for off-center vector fields
Had
Mobject.match_points
return selfFixed chaining animation in example scenes
Fixed the default color of tip
Fixed a typo in
ShowPassingFlashWithThinningStrokeWidth
Fixed the default size of
Text
Fixed a missing import line in
mobject.py
Fixed the bug in ControlsExample
Make sure frame is added to the scene when initialization
Fixed zooming directions
Rewrote
earclip_triangulation
to fix triangulationAllowed sound_file_name to be taken in without extensions
New features¶
Added
VShowPassingFlash
Added
COLORMAP_3B1B
Added some methods to coordinate system to access all axes ranges
get_origin()
get_all_ranges()
Added
set_color_by_rgba_func()
Updated
VectorField
andStreamLines
Allow
3b1b_colormap
as an option forget_colormap_list()
Return
stroke_width
as 1d arrayAdded
get_parts_by_text()
Use Text not TexText for Brace
Update to Cross to make it default to variable stroke width
Added
FlashAround
andFlashUnder
Allowed configuration in
Brace.get_text
Added
reorient()
for quicker changes to frame angleAdded
units
toset_euler_angles()
Allowed any
VMobject
to be passed intoTransformMatchingTex
Removed double brace convention in
Tex
andTexText
Added support for debugger launch
Added CLI flag
--config_file
to load configuration file manuallyAdded
tip_style
totip_config
Added
MarkupText
Take in
u_range
andv_range
as arguments toParametricSurface
Added
TrueDot