Dieses Projekt enthält den Code, der zum Generieren der erklärenden Mathematikvideos auf 3Blue1Brown verwendet wird.
Diese besteht fast ausschließlich aus Szenen, die mit der Bibliothek Manim generiert wurden. Siehe auch die von der Community gepflegte Version bei ManimCommunity.
Der Code älterer Projekte hängt möglicherweise von älteren Manim-Versionen ab und ist daher möglicherweise nicht sofort einsatzbereit.
Beachten Sie, dass die Bibliothek Manim selbst zwar Open-Source-Software ist und unter der MIT-Lizenz steht, der Inhalt dieses Repositorys jedoch unter der Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License verfügbar ist.
Ich habe dieses Video gemacht, um mehr darüber zu zeigen, wie ich Manim verwende. Beachten Sie, dass ich 3b1b/manim verwende, nicht die Community Edition. Einige Funktionen können sich zwischen den beiden unterscheiden. Abgesehen von der Installation von Manim selbst umfasst die Replikation des Workflows einige benutzerdefinierte Plugins mit Sublime, dem Texteditor, den ich verwende.
Wenn Sie einen anderen Texteditor verwenden, kann die gleiche Funktionalität nachgeahmt werden. Der Schlüssel liegt darin, zwei Fakten zu nutzen.
Wenn manimgl (file name) (scene name) -se (line_number)
ausführen, gelangen Sie in dieser Zeile der Datei in einen interaktiven Modus, ähnlich einem Debugger, mit einem iPython-Terminal, das zur Interaktion mit der Szene verwendet werden kann.
Wenn Sie in diesem interaktiven Modus „checkpoint_paste()“ in das Terminal eingeben, wird das in die Zwischenablage kopierte Codebit ausgeführt. Wenn der kopierte Code außerdem mit einem Kommentar beginnt, speichert er beim ersten Betrachten dieses Kommentars den Status der Szene an diesem Punkt und kehrt bei allen zukünftigen Codeaufrufen, die mit demselben Kommentar beginnen, zunächst zu diesem Status zurück der Szene, bevor Sie den Code ausführen.
Für meinen eigenen Arbeitsablauf habe ich einige Tastaturkürzel eingerichtet, um jeden dieser Befehle auszulösen. Für diejenigen, die es selbst ausprobieren möchten, erfahren Sie hier, was dazu gehört.
Installieren Sie Terminus (über die Paketsteuerung). Dies ist ein Terminal, das in Sublime ausgeführt wird, und es ermöglicht uns, einige Plugins zu schreiben, die den Status in Sublime übernehmen, z. B. wo sich Ihr Cursor befindet, was hervorgehoben ist usw., und diesen verwenden, um eine gewünschte Befehlszeilenanweisung auszuführen.
Nehmen Sie die Dateien im Unterverzeichnis „sublime_custom_commands“ dieses Repos und kopieren Sie sie in das Verzeichnis „Packages/User/“ Ihrer Sublime-Anwendung. Dies sollte ein Verzeichnis mit einem Pfad sein, der etwa wie /wherever/your/sublime/lives/Packages/User/ aussieht.
Fügen Sie einige Tastenkombinationen hinzu, um auf diese Befehle zu verweisen. Hier ist, was ich in meiner key_bindings-Datei habe. Sie finden Ihre eigene im Menü Sublime Text -> Einstellungen -> Keybindings
{ "keys": ["shift+super+r"], "command": "manim_run_scene" },
{ "keys": ["super+r"], "command": "manim_checkpoint_paste" },
{ "keys": ["super+alt+r"], "command": "manim_recorded_checkpoint_paste" },
{ "keys": ["super+ctrl+r"], "command": "manim_skipped_checkpoint_paste" },
{ "keys": ["super+e"], "command": "manim_exit" },
{ "keys": ["super+option+/"], "command": "comment_fold"},
Zum Beispiel binde ich „Befehl + Umschalt + R“ an einen benutzerdefinierten „manim_run_scene“-Befehl. Befindet sich der Cursor innerhalb einer Zeile einer Szene, gelangen Sie an dieser Stelle der Szene in den interaktiven Modus. Wenn sich der Cursor auf der Zeile befindet, die die Szene definiert, wird der Befehl, der zum Rendern der gesamten Szene in eine Datei erforderlich ist, in die Zwischenablage kopiert.
Ich binde „command + R“ an einen „manim_checkpoint_paste“-Befehl, der den markierten Code kopiert und „checkpoint_paste()“ im interaktiven Terminal ausführt.
Natürlich können Sie diese auf die von Ihnen bevorzugten Tastaturkürzel einstellen.
Urheberrecht © 2024 3Blue1Brown