问题描述
我不知道如何使用新的 Manim 版本 (v0.2.0) 创建简单的动画。 例如,我想将一个圆移动到边缘并同时对其进行缩放。
在以前的版本中,我会这样做:
class CircleAnimations(Scene):
def construct(self):
circle = Circle()
self.add(circle)
self.play(
circle.scale,0.2,circle.to_edge,UP
)
self.wait()
但由于在新版本中,要在 self.play
方法中制作动画,我们必须使用 mobj.animate.method(parameters)
,我尝试将 self.play
方法重写如下:
self.play(
circle.animate.scale(0.2),circle.animate.to_edge(UP)
)
但是这不起作用:它似乎只运行第一种方法,在本例中为 circle.animate.scale(0.2)
,而不是同时运行 circle.animate.scale(0.2)
和 circle.animate.to_edge(UP)
有什么解决办法吗? 提前致谢。
解决方法
您可以像这样嵌套动画:
self.play(
circle.animate.scale(0.2).to_edge(UP)
)
另一种方法是使用 ApplyMethod
类:
self.play(
ApplyMethod(circle.scale,0.2),ApplyMethod(circle.to_edge,UP)
)