#python #manim
Вопрос:
У меня странная проблема с сообществом манимов. У меня уже были установлены все вспомогательные файлы, поэтому мне просто нужно было установить manim, и, похоже, он работает нормально. Однако я вижу какое-то странное поведение, которого не понимаю. Вот пример вызова программы scene.py (оба примера взяты из документов сообщества Manim):
from manim import *
class CreatingMobjects(Scene):
def construct(self):
circle = Circle()
self.add(circle)
self.wait(1)
self.remove(circle)
self.wait(1)
class VectorArrow(Scene):
def construct(self):
dot = Dot(ORIGIN)
arrow = Arrow(ORIGIN, [2, 2, 0], buff=0)
numberplane = NumberPlane()
origin_text = Text('(0, 0)').next_to(dot, DOWN)
tip_text = Text('(2, 2)').next_to(arrow.get_end(), RIGHT)
self.add(numberplane, dot, arrow, origin_text, tip_text)
Когда я запускаю команду python -m manim scene.py CreatingMobjects -p -ql
, все работает нормально, и фильм появляется, как и должно быть. Однако, если я выполню команду python -m manim scene.py VectorArrow -p -ql
, она не сработает. Первое, что печатается на экране ./manim/media/videos/scene/480p15/partial_movie_files/VectorArrow/partial_movie_file_list.txt: Invalid data found when processing input
, а затем говорится: The file ./manim/media/videos/scene/480p15/VectorArrow.mp4 does not exist.
«Я действительно не понимаю, почему один из них работает, а другой-нет». Я очень новичок в manim (очевидно), и я подумал, что эти очень простые примеры будут хорошим началом, но я уже не понимаю, что происходит. Любая помощь была бы очень признательна.
Ответ №1:
Добавить self.wait(1)
после self.add(numberplane, dot, arrow, origin_text, tip_text)
. Тогда скрипт должен работать.
Комментарии:
1. о, мой бог… это сработало! Я не знаю, почему мне не пришло в голову попробовать это. Спасибо. Я получил эти примеры непосредственно из документов сообщества Manim, поэтому я бы подумал, что они будут работать «как есть».
2. Ты спас мне жизнь!