mirror of
https://github.com/3b1b/manim.git
synced 2025-08-19 13:01:00 +00:00
Have presenter mode hold before first play call
This commit is contained in:
parent
22c5e79f5f
commit
a9a151d4ef
1 changed files with 8 additions and 6 deletions
|
@ -145,9 +145,6 @@ class Scene(object):
|
||||||
if self.window:
|
if self.window:
|
||||||
self.window.destroy()
|
self.window.destroy()
|
||||||
self.window = None
|
self.window = None
|
||||||
if self.inside_embed:
|
|
||||||
self.embed_shell.enable_gui(None)
|
|
||||||
self.embed_shell.exiter()
|
|
||||||
|
|
||||||
def interact(self) -> None:
|
def interact(self) -> None:
|
||||||
# If there is a window, enter a loop
|
# If there is a window, enter a loop
|
||||||
|
@ -522,6 +519,8 @@ class Scene(object):
|
||||||
def wrapper(self, *args, **kwargs):
|
def wrapper(self, *args, **kwargs):
|
||||||
if self.inside_embed:
|
if self.inside_embed:
|
||||||
self.save_state()
|
self.save_state()
|
||||||
|
if self.presenter_mode and self.num_plays == 0:
|
||||||
|
self.hold_loop()
|
||||||
|
|
||||||
self.update_skipping_status()
|
self.update_skipping_status()
|
||||||
should_write = not self.skip_animations
|
should_write = not self.skip_animations
|
||||||
|
@ -601,9 +600,7 @@ class Scene(object):
|
||||||
if self.presenter_mode and not self.skip_animations and not ignore_presenter_mode:
|
if self.presenter_mode and not self.skip_animations and not ignore_presenter_mode:
|
||||||
if note:
|
if note:
|
||||||
log.info(note)
|
log.info(note)
|
||||||
while self.hold_on_wait:
|
self.hold_loop()
|
||||||
self.update_frame(dt=1 / self.camera.frame_rate)
|
|
||||||
self.hold_on_wait = True
|
|
||||||
else:
|
else:
|
||||||
time_progression = self.get_wait_time_progression(duration, stop_condition)
|
time_progression = self.get_wait_time_progression(duration, stop_condition)
|
||||||
last_t = 0
|
last_t = 0
|
||||||
|
@ -617,6 +614,11 @@ class Scene(object):
|
||||||
self.refresh_static_mobjects()
|
self.refresh_static_mobjects()
|
||||||
return self
|
return self
|
||||||
|
|
||||||
|
def hold_loop(self):
|
||||||
|
while self.hold_on_wait:
|
||||||
|
self.update_frame(dt=1 / self.camera.frame_rate)
|
||||||
|
self.hold_on_wait = True
|
||||||
|
|
||||||
def wait_until(
|
def wait_until(
|
||||||
self,
|
self,
|
||||||
stop_condition: Callable[[], bool],
|
stop_condition: Callable[[], bool],
|
||||||
|
|
Loading…
Add table
Reference in a new issue