ManimBanner

限定名称: manim.mobject.logo.ManimBanner

class ManimBanner(dark_theme=True)[源代码]

基类: VGroup

表示 Manim 横幅的便捷类。

可以使用自定义方法进行动画处理。

参数:

dark_theme (布尔值) – 如果为 True(默认值),将渲染深色主题版本的标志(带有浅色文本字体)。否则,如果为 False,则使用浅色主题版本(带有深色文本字体)。

示例

示例: 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))
class DarkThemeBanner(Scene):
    def construct(self):
        banner = ManimBanner()
        self.play(banner.create())
        self.play(banner.expand())
        self.wait()
        self.play(Unwrite(banner))

示例: 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))
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))

方法

create

Manim 标志的创建动画。

expand

将 Manim 标志展开为横幅的动画。

刻度

按指定比例因子缩放横幅。

属性

animate (动画)

用于动画化 self 的任何方法的应用。

animation_overrides (动画覆盖)

颜色

depth (深度)

mobject 的深度。

fill_color (填充颜色)

如果存在多种颜色(用于渐变),则返回第一种颜色

height (高度)

mobject 的高度。

n_points_per_curve (每条曲线的点数)

sheen_factor (光泽因子)

stroke_color (描边颜色)

width (宽度)

mobject 的宽度。

_original__init__(dark_theme=True)

初始化自身。有关准确签名,请参阅 help(type(self))。

参数:

dark_theme (布尔值)

create(run_time=2)[源代码]

Manim 标志的创建动画。

参数:

run_time (浮点数) – 动画的运行时间。

返回:

可在 Scene.play() 调用中使用的动画。

返回类型:

AnimationGroup

expand(run_time=1.5, direction='center')[源代码]

将 Manim 标志展开为横幅的动画。

返回的动画将横幅从其初始状态(仅显示图标的 Manim 标志)转换为其展开状态(显示完整名称及图标)。

有关如何使用此功能,请参阅类文档。

注意

在调用此方法之前,文本“anim”不是横幅对象的子对象。展开后,它将作为子对象添加,因此对横幅对象的后续动画也将应用于文本“anim”。

参数:
  • run_time (浮点数) – 动画的运行时间。

  • direction – 标志展开的方向。

返回:

可在 Scene.play() 调用中使用的动画。

返回类型:

Succession

示例

示例: 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"),
        )
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)[源代码]

按指定比例因子缩放横幅。

参数:

scale_factor (浮点数) – 用于缩放横幅的因子。

返回:

缩放后的横幅。

返回类型:

ManimBanner