mobject¶
用于可显示对象的基础类。
类型别名
- class TimeBasedUpdater¶
Callable[['Mobject', float], object]
- class NonTimeBasedUpdater¶
Callable[['Mobject'], object]
- class Updater¶
NonTimeBasedUpdater|TimeBasedUpdater
类
函数
- override_animate(method)[source]¶
用于覆盖方法动画的装饰器。
这允许指定一个方法(返回一个
Animation),当使用.animate语法来动画化方法的应用时,会调用这个方法。另请参阅
注意
重写的方法不能与普通方法或其他重写方法结合使用,通过使用
.animate语法进行方法链式调用。示例
示例:AnimationOverrideExample ¶
from manim import * class CircleWithContent(VGroup): def __init__(self, content): super().__init__() self.circle = Circle() self.content = content self.add(self.circle, content) content.move_to(self.circle.get_center()) def clear_content(self): self.remove(self.content) self.content = None @override_animate(clear_content) def _clear_content_animation(self, anim_args=None): if anim_args is None: anim_args = {} anim = Uncreate(self.content, **anim_args) self.clear_content() return anim class AnimationOverrideExample(Scene): def construct(self): t = Text("hello!") my_mobject = CircleWithContent(t) self.play(Create(my_mobject)) self.play(my_mobject.animate.clear_content()) self.wait()
class CircleWithContent(VGroup): def __init__(self, content): super().__init__() self.circle = Circle() self.content = content self.add(self.circle, content) content.move_to(self.circle.get_center()) def clear_content(self): self.remove(self.content) self.content = None @override_animate(clear_content) def _clear_content_animation(self, anim_args=None): if anim_args is None: anim_args = {} anim = Uncreate(self.content, **anim_args) self.clear_content() return anim class AnimationOverrideExample(Scene): def construct(self): t = Text("hello!") my_mobject = CircleWithContent(t) self.play(Create(my_mobject)) self.play(my_mobject.animate.clear_content()) self.wait()- Return type:
LambdaType