Skip to main content

A library that extends the capabilities of Manim

Project description

Main Logo

Project Version Project License

ManimExtra - Addition to the standard set function in ManimCE

Table of Contents:

What is it?

ManimExtra provides an advanced feature set for ManimCE. The library makes it easy to work with geometry by adding many classic designs, such as a bisector or an inscribed circle. There are also many objects that'll simplify the work with algebra by adding systems of equations and a trigonometric circle.

Installation

Installing the library is straightforward. If there were no problems with the installation of ManimCE, then there'll be no problems here. On Windows, you need to write the command

pip install manimextra

And on Linux/MacOS

pip3 install manimextra

Examples

Below are some complex usage examples combining several objects from ManimExtra.

Example 1: Triangle Centers and Circles

from manim import *
from manimextra import *

class TriangleCentersScene(Scene):
    def construct(self):
        A = Dot(3 * LEFT + 2 * DOWN, color=RED)
        B = Dot(2 * LEFT + 3 * UP, color=GREEN)
        C = Dot(3 * RIGHT + 2 * DOWN, color=BLUE)

        sides = VGroup(Line(B, C), Line(A, C), Line(A, B))

        incenter = Incenter(A, B, C).set_color(YELLOW)
        centroid = Centroid(A, B, C).set_color(PURPLE)
        circumcenter = Circumcenter(A, B, C).set_color(ORANGE)

        incircle = Incircle(A, B, C, color=YELLOW, stroke_opacity=0.5)
        circumcircle = Circumcircle(A, B, C, color=ORANGE, stroke_opacity=0.5)

        self.add(A, B, C, sides)
        self.play(FadeIn(incenter), FadeIn(incircle))
        self.play(FadeIn(centroid))
        self.play(FadeIn(circumcenter), FadeIn(circumcircle))
        self.wait()

Example 2: System of Equations Animation

from manim import *
from manimextra import *

class SystemOfEquationsExample(Scene):
    def construct(self):
        system1 = SystemOfEquations(
            MathTex("x + y = 2"),
            MathTex("x - y = 0")
        )
        system2 = SystemOfEquations(
            MathTex("x = 1"),
            MathTex("y = 1")
        )
        self.play(FadeIn(system1))
        self.wait()
        self.play(TransformSystem(system1, system2))
        self.wait()

Example 3: Pie Chart and Unit Circle

from manim import *
from manimextra import *

class PieAndCircleScene(Scene):
    def construct(self):
        pie = PieChart(
            data={"A": 10, "B": 20, "C": 30},
            label_buff=0.7,
            inner_radius=1,
            outer_radius=2
        ).to_edge(LEFT)
        circle = UnitCircle().to_edge(RIGHT)
        circle.add_point(PI / 2, r"\dfrac{\pi}{2}")
        circle.add_point(PI, r"\pi")
        self.play(FadeIn(pie), FadeIn(circle))
        self.wait()

Documentation

Full documentation with API reference and more examples is available at:

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

manimextra-1.12.7.tar.gz (24.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

manimextra-1.12.7-py3-none-any.whl (32.4 kB view details)

Uploaded Python 3

File details

Details for the file manimextra-1.12.7.tar.gz.

File metadata

  • Download URL: manimextra-1.12.7.tar.gz
  • Upload date:
  • Size: 24.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.3

File hashes

Hashes for manimextra-1.12.7.tar.gz
Algorithm Hash digest
SHA256 51bfde7d68e627543635c116063bf071b1fbbe3a048d7204e471156d4f0207e0
MD5 c91250b8d6bc2c46716b2288bae0acb9
BLAKE2b-256 a0b6652bcef2ab59fdcc882b893c0ebf03ca857f144e5d2d19e357ee67e6961a

See more details on using hashes here.

File details

Details for the file manimextra-1.12.7-py3-none-any.whl.

File metadata

  • Download URL: manimextra-1.12.7-py3-none-any.whl
  • Upload date:
  • Size: 32.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.3

File hashes

Hashes for manimextra-1.12.7-py3-none-any.whl
Algorithm Hash digest
SHA256 53740e0976c112fb5a70fcc9e52a88a063e33e16a33a6356f12b23c250537470
MD5 8b58bee042650f67281ff2178ae5856f
BLAKE2b-256 3a975cf47cda9acc346a63ba21efcaf12e319aef27ac6a9ffb04281b11549766

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page