Skip to main content

A library that extends the capabilities of Manim

Project description

Main Logo

Project Version Project License Tests

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.13.1.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.13.1-py3-none-any.whl (32.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: manimextra-1.13.1.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.13.1.tar.gz
Algorithm Hash digest
SHA256 2332c4013347ca5b193a6435683903b6f60c4ad846a3549dbc2415e1d054131b
MD5 35c7c212a668ca85aa2e81cbbe6defd0
BLAKE2b-256 7965b6c9f66706fa8e9ae5e24bade0f77b4512b7497cd14f9fed4a2f9166f0a1

See more details on using hashes here.

File details

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

File metadata

  • Download URL: manimextra-1.13.1-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.13.1-py3-none-any.whl
Algorithm Hash digest
SHA256 ef8309ab5d9635c23bcea1fa4f7c5fc7601813f7d29d766b01df27cb8effb4bf
MD5 b89b7b1d8d665db97a054c6469e85be3
BLAKE2b-256 b795e7c477ce246b0ec1dcae2f8f61b7bb00f1c403f4d49f1026e23b6f8a901b

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