Commit graph

154 commits

Author SHA1 Message Date
Grant Sanderson
22c5e79f5f Some cleanups to the way scenes end 2022-05-03 12:41:44 -07:00
Grant Sanderson
a6fcfa3b40 Add time_span option to Animation 2022-05-02 11:40:42 -07:00
Grant Sanderson
fddb0b29e1 Remove unnecessary import 2022-05-02 11:38:58 -07:00
Grant Sanderson
75e1cff579 Reorganize how scene state is managed 2022-05-02 11:11:18 -07:00
Grant Sanderson
feab79c260 Get rid of overly complicated anims_from_play_args (which means old style method building is no longer supported) 2022-05-02 11:10:57 -07:00
Grant Sanderson
4a8e8e5447 Clear later checkpoints 2022-05-01 15:31:42 -04:00
Grant Sanderson
a791a82111 Bug fix 2022-04-28 19:15:26 -04:00
Grant Sanderson
7f94a401a8 Wait on start for presenter mode 2022-04-28 12:15:00 -06:00
Grant Sanderson
e83ad785ca Handle quitting during scene more gracefully 2022-04-27 11:19:44 -07:00
Grant Sanderson
52259af5df Don't show animation progress bar by default 2022-04-27 11:19:20 -07:00
Grant Sanderson
d75439a60e Hacky fix to lambda namespace issues with IPython embeds 2022-04-27 09:54:29 -07:00
Grant Sanderson
1b589e336f Add checkpoints to Scene 2022-04-27 09:53:56 -07:00
Grant Sanderson
d6bf9f00a1 Slight tweaks 2022-04-25 10:25:35 -07:00
Grant Sanderson
42d1f48c60 Only leave wait notes in presenter mode 2022-04-25 09:55:49 -07:00
Grant Sanderson
01f0dd30d0 Have Scene.remove look at extended ancestry 2022-04-25 09:55:00 -07:00
Grant Sanderson
cc8922155d Make sure Scene.remove clears internal mobject list of family members of args 2022-04-24 13:23:02 -07:00
Grant Sanderson
6310e2fb64 Clean up Scene.remove function, delete restructure_list_to_exclude_certain_family_members 2022-04-24 10:29:31 -07:00
Grant Sanderson
bd2dce0830 When scene saves state, have it only copy mobjects which have changed 2022-04-23 18:52:26 -07:00
Grant Sanderson
0fd8491c51 Move Command + z and Command + shift + z behavior to Scene 2022-04-23 09:20:44 -07:00
Grant Sanderson
2ba9243067 Merge branch 'master' of github.com:3b1b/manim into video-work 2022-04-23 09:03:53 -07:00
Grant Sanderson
04bca6cafb Refresh static mobjects on undo's and redo's 2022-04-22 23:14:00 -07:00
Grant Sanderson
b2e0aee93e Get rid of ctrl + shift + e embed option 2022-04-22 11:46:18 -07:00
Grant Sanderson
cf466006fa Add undo and redo stacks for scene, together with Command + Z functionality 2022-04-22 11:44:28 -07:00
Grant Sanderson
e0f5686d66 Fix bug with trying to close window during embed 2022-04-22 10:16:43 -07:00
Grant Sanderson
581228b08f Have scene keep track of a map from mobject ids to mobjects for all it's ever seen 2022-04-22 08:33:57 -07:00
Grant Sanderson
c96bdc243e Update Scene.embed to play nicely with gui interactions 2022-04-22 08:16:17 -07:00
YishiMichael
37075590b5
Sort imports 2022-04-22 16:42:45 +08:00
Grant Sanderson
78a7078772 Move saved mobject directory logic to scene_file_writer.py 2022-04-21 15:02:11 -07:00
Grant Sanderson
d24b8ff48f
Merge branch 'master' into master 2022-04-20 22:40:11 -07:00
Grant Sanderson
68e2909af1 Mild cleanup to Scene interactivity 2022-04-20 21:50:37 -07:00
Grant Sanderson
777b6d3778 Allow for saving and loading mobjects from file at the Scene level 2022-04-20 21:49:57 -07:00
Grant Sanderson
97400a5cf2 Update Scene.save_state and Scene.restore 2022-04-20 21:49:38 -07:00
Grant Sanderson
cb768c26a0 Add functionality for recovering mobjects from their ids (to enable copying and pasting) 2022-04-20 21:48:58 -07:00
Grant Sanderson
50565fcd7a Change the way changing-vs-static mobjects are tracked
Previously, Camera would keep track of which mobjects are supposed to be "static", so that it could generated their render groups once and not repeat unnecessarily. This had an awkward dependence where Scene would then need to keep track of which mobjects should and should not be considered static.

This update pushes that logic to the Mobject level, where it keeps track internally of whether it's being animated, has an updater, or can be moved around by the mouse.
2022-04-14 16:27:58 -07:00
Grant Sanderson
6a01e36b36 Minor cleanup 2022-04-14 14:36:17 -07:00
YishiMichael
9ef9961d0e
Sort imports 2022-04-12 19:19:59 +08:00
Grant Sanderson
e74cb85182 Remove unnecessary close of ProgressDisplay 2022-03-30 13:14:29 -07:00
Grant Sanderson
a9349057ad Merge branch 'master' of github.com:3b1b/manim into video-work 2022-03-22 11:30:25 -07:00
Grant Sanderson
9d0cc810c5 Make panning more sensitive to mouse movements 2022-03-22 10:36:48 -07:00
TonyCrane
4fbe948b63
style: insert an empty line after import 2022-02-16 21:08:25 +08:00
TonyCrane
9f3b404df6
resolve conflict and add type hints for it 2022-02-16 11:46:55 +08:00
Grant Sanderson
46e356e791 Change keyboard shortcut to drop into an embedding to be ctrl+shift+e 2022-02-15 10:10:57 -08:00
Grant Sanderson
133724d29a Allow for using right arrow in presenter mode 2022-02-14 07:56:26 -08:00
Grant Sanderson
559b96e7ce Small bug fix for presenter mode 2022-02-14 07:52:06 -08:00
TonyCrane
be5de32d70
chore: add type hints to manimlib.scene 2022-02-14 21:22:18 +08:00
Grant Sanderson
602809758e
Video work (#1739)
* Enable setting points to a null list, and adding one point at a time.

* Add refresh_locked_data

* Add presenter mode to scenes with -p option

* Allow for an embed by hitting e during interaction

* Add set_min_height, etc.

* Make sure null parametric curve has at least one point

* Account for edge case where \{ is used in Tex

* Allow for logging notes in wait calls, useful for presenter mode

* Simplify choose, and add gen_choose for fractional amounts

* Default to no top on axes

* Allow match_x, match_y, etc. to take in a point

* Allow wait calls to ignore presenter mode

* Just use math.combo, no caching with choose(n, r)

* Use generator instead of list in bezier

* Bubble init_colors should override

* Account for "px" values read in from an svg

* Stop displaying when writing is happening

* Update the way Bubble override SVG colors
2022-02-13 15:16:16 -08:00
Grant Sanderson
5dd7cce67f Have Scene.wait only go through full progression during skipping when there are time-based updaters 2021-12-07 10:05:33 -08:00
Grant Sanderson
f21a4a4696 Only stop skipping if the scene wasn't originally meant to be 2021-12-07 10:04:28 -08:00
Grant Sanderson
98b0d266d2 Make sure skip_animations and start_at_animation_number play well together 2021-12-07 10:03:10 -08:00
Grant Sanderson
9dd1f47dab Create single progress display for full scene render
When a scene is written to file, it will now do a preliminary run of a copy of the scene with skip_animations turned on to count the total frames, which has the added benefit of catching runtime errors early, and allowing an quicker preview of the last frame to be sure everything will render as expected.

The Progress display bars for individual animations are replaced with a more global progress display bar showing the full render time for the scene.

This has the downside that all the non-rendering computations in a scene are run twice, so any scene with slow computations unrelated to rendering will take longer. But those are rarer, so the benefits seem worth it.
2021-11-30 11:41:33 -08:00