如果我有3行manim文本,
l = TextMobject("Line 1")
l2 = TextMobject("Line 2")
l3 = TextMobject("Line 3")
我想把它们放在一起,我该怎么做?我正在寻找比更容易打字、更像蟒蛇的东西
v = np.array([-3, 2, 0]) # Vector to translate the text by
self.play(ApplyMethod(l.shift, v), ApplyMethod(l2.shift, v), ApplyMethod(l3.shift, v))
更像:
lines = [l, l2, l3]
g = GroupMobjects(*lines)
v = np.array([-3, 2, 0]) # Vector
self.play(ApplyMethod(g.shift, v))
我刚刚为上面的示例编写了GroupMobjects
语法。
我已经研究过使用VGroup
,它似乎与我试图实现的目标很匹配,但问题是我不知道如何使用它,而且manim没有最好的文档(尽管有充分的理由(。
任何解决方案都将不胜感激。
Manim中有两种类型的容器,Groups
和VGroups
,不同之处在于VGroups
只能包含VMobjects
(基于Bezier曲线的对象(,而Groups
可以是其他类型,如Images(不能在VGroups
中对图像进行分组,只能在Groups
中对图像(。
正如我在这里已经解释过的,完整的文档并不存在,只有部分(EulerTour和TB(。如果你想了解它们是如何使用的,我可以留下这个和这个链接,但一般来说,目前,你必须从源代码中学习(VGroup
是VMobject
的子类,VMobject
是Mobject
的子类(。