Short introduction to Manim

From wikiluntti

Introduction

Manim or manimgl.

Virtual engine

python -m venv .
source bin/activate


Some short manim scrips to generate easy visualizations.

manim -pql bez2.py
manim -pqh bez2.py BezierSplineExample

   --format=png
   f: open the directory/ folder
   i: generate gif file
   p: play
  qm, qh, qk: quality (low, high, 4k)
  qh: high quality
   s: save last frame
   t: transparent background
config.background_color = WHITE

Add a background image

bg_image = ImageMobject("bg_P5.png")
self.add( bg_image )

Add the background plane

plane = NumberPlane( background_line_style={
                "stroke_color": BLACK,
                "stroke_width": 4,
                "stroke_opacity": 1
            },
            x_range=[-10, 10, 1],
            y_range=[-10, 10, 1],
                            )
self.add( plane )

Install Manim on Arch Linux

Pip is not working on a virtual environment. However use uv to install it. That works (on Sep 2024):

uv pip install manim

It is now installed on virtual environment, but the global system is not affected (not working outside virtual environment).

BG plane

       number_plane = NumberPlane(
            background_line_style={
                "stroke_color": TEAL,
                "stroke_width": 1,
                "stroke_opacity": 0.2
            }
        )
        self.add(number_plane)

Bezier curve

Animated bezier curve with two points:

https://github.com/markkuleino/manim/blob/main/FLL_CC0_bezier.py

See tutorial on Bezier Curves https://pomax.github.io/bezierinfo/ and the interactive tutorial https://www.jasondavies.com/animated-bezier/

Heat engine


Paths

https://github.com/Elteoremadebeethoven/AnimationsWithManim/blob/master/English/extra/faqs/paths.md

  • Show Points
  • Path as corners
  • Path smoothly
  • Bezier points of a path
  • Change path style


Lines

https://github.com/markkuleino/manim/blob/main/FLL_CC2_m13b.py