Manim(manimlib 版本)无法正常工作
Manim (manimlib version) not working as it should
一切似乎都已正确安装,但在启动渲染时,出现此错误:
File "c:\users\oussa\appdata\local\programs\python\python37\lib\site-packages\manimlib\extract_scene.py", line 155, in main
scene = SceneClass(**scene_kwargs)
File "c:\users\oussa\appdata\local\programs\python\python37\lib\site-packages\manimlib\scene\scene.py", line 75, in __init__
self.construct()
File "testM.py", line 5, in construct
text = TextMobject("I literally h8 u.")
File "c:\users\oussa\appdata\local\programs\python\python37\lib\site-packages\manimlib\mobject\svg\tex_mobject.py", line 150, in __init__
self.break_up_by_substrings()
File "c:\users\oussa\appdata\local\programs\python\python37\lib\site-packages\manimlib\mobject\svg\tex_mobject.py", line 190, in break_up_by_substrings
sub_tex_mob.move_to(self.submobjects[last_submob_index], RIGHT)
IndexError: list index out of range
这就是程序的 Python 代码 运行:
from manimlib.imports import *
class TestScene(Scene):
def construct(self):
text = TextMobject("I literally h8 u.")
text.scale(2)
self.play(Write(text))
self.wait()
class TestScene2(Scene):
def construct(self):
text = TextMobject("I literally $ u.")
text.scale(2)
self.play(Write(text))
self.wait()
有什么问题?
您的代码实际上没有做任何事情,因为它只是一堆 class 定义。顺便说一句,您可能想开始使用标准的 Python 缩进 4 而不是 2,这样以后您就不会头疼了。
安装manim
,你的代码实际上不起作用,但是如果导入语句被替换为from manim import *
,你实例化一个对象并将TextMobject
替换为[=14] =], 它在调用 construct()
.
后运行并渲染一些视频
我将其替换为更集中的导入,因为 import *
通常不是一个好主意。
from manim import Scene, Text, Write
class TestScene(Scene):
def construct(self):
text = Text("I literally h8 u.")
text.scale(2)
self.play(Write(text))
self.wait()
class TestScene2(Scene):
def construct(self):
text = Text("I literally $ u.")
text.scale(2)
self.play(Write(text))
self.wait()
ts = TestScene()
ts.construct()
我正在使用 Python 3.9.7(没有原因,只是我的环境的版本)和 manim 0.12.0。
不过我会说 manim
看起来像一个非常简陋的包,所以我预计会出现一些更奇怪的问题。
一切似乎都已正确安装,但在启动渲染时,出现此错误:
File "c:\users\oussa\appdata\local\programs\python\python37\lib\site-packages\manimlib\extract_scene.py", line 155, in main
scene = SceneClass(**scene_kwargs)
File "c:\users\oussa\appdata\local\programs\python\python37\lib\site-packages\manimlib\scene\scene.py", line 75, in __init__
self.construct()
File "testM.py", line 5, in construct
text = TextMobject("I literally h8 u.")
File "c:\users\oussa\appdata\local\programs\python\python37\lib\site-packages\manimlib\mobject\svg\tex_mobject.py", line 150, in __init__
self.break_up_by_substrings()
File "c:\users\oussa\appdata\local\programs\python\python37\lib\site-packages\manimlib\mobject\svg\tex_mobject.py", line 190, in break_up_by_substrings
sub_tex_mob.move_to(self.submobjects[last_submob_index], RIGHT)
IndexError: list index out of range
这就是程序的 Python 代码 运行:
from manimlib.imports import *
class TestScene(Scene):
def construct(self):
text = TextMobject("I literally h8 u.")
text.scale(2)
self.play(Write(text))
self.wait()
class TestScene2(Scene):
def construct(self):
text = TextMobject("I literally $ u.")
text.scale(2)
self.play(Write(text))
self.wait()
有什么问题?
您的代码实际上没有做任何事情,因为它只是一堆 class 定义。顺便说一句,您可能想开始使用标准的 Python 缩进 4 而不是 2,这样以后您就不会头疼了。
安装manim
,你的代码实际上不起作用,但是如果导入语句被替换为from manim import *
,你实例化一个对象并将TextMobject
替换为[=14] =], 它在调用 construct()
.
我将其替换为更集中的导入,因为 import *
通常不是一个好主意。
from manim import Scene, Text, Write
class TestScene(Scene):
def construct(self):
text = Text("I literally h8 u.")
text.scale(2)
self.play(Write(text))
self.wait()
class TestScene2(Scene):
def construct(self):
text = Text("I literally $ u.")
text.scale(2)
self.play(Write(text))
self.wait()
ts = TestScene()
ts.construct()
我正在使用 Python 3.9.7(没有原因,只是我的环境的版本)和 manim 0.12.0。
不过我会说 manim
看起来像一个非常简陋的包,所以我预计会出现一些更奇怪的问题。