manim (community documentation link) is a Python package created by educator Grant Sanderson for building video content (particularly on mathematics) for publication on YouTube. Here is an example of what manim can do. A good sign for betting time and effort on learning the ropes: manim has engendered a lot of community activity around building plugins.
manim
from conda-forge
myvideo.py
import manim as m
class Scene1(m.Scene):
def construct(self):
c = m.Circle(2, color = m.RED, fill_opacity = 0.6)
self.play(m.DrawBorderThenFill(c), run_time = 1.0)
title = m.Text("Bumpkin", font_size = 60, slant = "ITALIC").shift(m.UP * 0.3)
subtitle = m.Text("Dynamics", font_size = 40, slant = "ITALIC").shift(m.DOWN * 0.3)
self.play(m.Write(title), m.Write(subtitle))
self.wait(1)
a = m.Arc(3.0, m.TAU * (1/2), -m.TAU * (3/4), color = m.GREEN, stroke_width = 30)
self.play(m.Create(a))
self.wait(3)
return
Instructive facets of manim syntax are found in this simple example. (Source: this intro video by Mitko Nikov.)
manim
utility to render the Python (cinematography!) file as a video:python -m manim myvideo.py Scene1
Locate and view the output, in my case at /home/myusername/manim/media/videos/myvideo/1080p60/Scene1.mp4
.
TAU
is used for 2*Pi
… so what other constants are available? Look here.