ManimBanner#

Qualified name: manim.mobject.logo.ManimBanner

class ManimBanner(dark_theme=True)[source]#

Bases: VGroup

Convenience class representing Manim’s banner.

Can be animated using custom methods.

Parameters

dark_theme (bool) – If True (the default), the dark theme version of the logo (with light text font) will be rendered. Otherwise, if False, the light theme version (with dark text font) is used.

Examples

Example: DarkThemeBanner

from manim import *

class DarkThemeBanner(Scene):
    def construct(self):
        banner = ManimBanner()
        self.play(banner.create())
        self.play(banner.expand())
        self.wait()
        self.play(Unwrite(banner))

Example: LightThemeBanner

from manim import *

class LightThemeBanner(Scene):
    def construct(self):
        self.camera.background_color = "#ece6e2"
        banner = ManimBanner(dark_theme=False)
        self.play(banner.create())
        self.play(banner.expand())
        self.wait()
        self.play(Unwrite(banner))

Methods

create

The creation animation for Manim's logo.

expand

An animation that expands Manim's logo into its banner.

scale

Scale the banner by the specified scale factor.

Attributes

animate

Used to animate the application of any method of self.

animation_overrides

color

depth

The depth of the mobject.

fill_color

If there are multiple colors (for gradient) this returns the first one

height

The height of the mobject.

n_points_per_curve

sheen_factor

stroke_color

width

The width of the mobject.

create(run_time=2)[source]#

The creation animation for Manim’s logo.

Parameters

run_time (float) – The run time of the animation.

Returns

An animation to be used in a Scene.play() call.

Return type

AnimationGroup

expand(run_time=1.5, direction='center')[source]#

An animation that expands Manim’s logo into its banner.

The returned animation transforms the banner from its initial state (representing Manim’s logo with just the icons) to its expanded state (showing the full name together with the icons).

See the class documentation for how to use this.

Note

Before calling this method, the text “anim” is not a submobject of the banner object. After the expansion, it is added as a submobject so subsequent animations to the banner object apply to the text “anim” as well.

Parameters
  • run_time (float) – The run time of the animation.

  • direction – The direction in which the logo is expanded.

Returns

An animation to be used in a Scene.play() call.

Return type

Succession

Examples

Example: ExpandDirections

from manim import *

class ExpandDirections(Scene):
    def construct(self):
        banners = [ManimBanner().scale(0.5).shift(UP*x) for x in [-2, 0, 2]]
        self.play(
            banners[0].expand(direction="right"),
            banners[1].expand(direction="center"),
            banners[2].expand(direction="left"),
        )
scale(scale_factor, **kwargs)[source]#

Scale the banner by the specified scale factor.

Parameters

scale_factor (float) – The factor used for scaling the banner.

Returns

The scaled banner.

Return type

ManimBanner