diff --git a/examples/manim/updater_scene.py b/examples/manim/updater_scene.py new file mode 100644 index 0000000000000000000000000000000000000000..703744a470d34a6d7a8c5b859462c8c4856a0c4b --- /dev/null +++ b/examples/manim/updater_scene.py @@ -0,0 +1,30 @@ +from manim import * + + +class ExampleUpdater(Scene): + def construct(self): + self.camera.background_color = WHITE + Text.set_default(color=BLACK) + + rect = Rectangle(color=BLUE) + circle = Circle(color=RED, fill_color=GREEN, fill_opacity=1) + text = Text('Manim') + rect_and_circle_group = VGroup(rect, circle) + + def text_follow_updater(mobj: Mobject): + mobj.move_to(rect.get_center()) + + text.add_updater(text_follow_updater) + + rect.shift(DOWN * 1.5) + circle.next_to(rect, UP) + text.move_to(rect.get_center()) + + self.add(rect, circle, text) + + self.play(rect.animate.shift(RIGHT * 2)) + + self.play(ScaleInPlace(rect_and_circle_group, 0.75)) + self.play(rect_and_circle_group.animate.shift(UL * 2)) + + self.wait(3)