def _main_title(self):
        paper_name_a = TextMobject(
            "Simulating human interactions in supermarkets to")
        paper_name_b = TextMobject(
            "measure the risk of COVID-19 contagion at scale")
        author_list_a = TextMobject(
            "Serge Plata\\quad Sumanas Sarma\\quad Melvin Lancelot")
        author_list_b = TextMobject(
            "Kristine Bagrova\\quad David Romano-Critchley")
        arxiv = TextMobject("arXiv:2006.15213")

        paper_name_a.shift(UP)
        paper_name_b.next_to(paper_name_a, DOWN)

        author_list_a.scale(0.8)
        author_list_b.scale(0.8)

        author_list_a.next_to(paper_name_b, DOWN + DOWN)
        author_list_b.next_to(author_list_a, DOWN)

        arxiv.scale(0.6)
        arxiv.next_to(author_list_b, DOWN + DOWN)

        self.play(FadeIn(paper_name_a), FadeIn(paper_name_b))
        self.wait()
        self.play(FadeIn(author_list_a), FadeIn(author_list_b))
        self.play(FadeIn(arxiv))

        self.wait(4)
        self.play(FadeOut(paper_name_a), FadeOut(paper_name_b),
                  FadeOut(author_list_a), FadeOut(author_list_b),
                  ApplyMethod(arxiv.move_to, BOTTOM + (UP * 0.5)))
Example #2
0
 def get_text(self,
              text,
              scale=1,
              buff=0.1,
              invert_dir=False,
              invert_texto=False,
              remove_rot=False,
              **moreargs):
     linea_referencia = Line(self[0][0].get_start(), self[0][-1].get_end())
     texto = TextMobject(text, **moreargs)
     ancho = texto.get_height() / 2
     if invert_texto:
         inv = PI
     else:
         inv = 0
     if remove_rot:
         texto.scale(scale).move_to(self)
     else:
         texto.rotate(
             linea_referencia.get_angle()).scale(scale).move_to(self)
         texto.rotate(inv)
     if invert_dir:
         inv = -1
     else:
         inv = 1
     texto.shift(self.direccion * (buff + 1) * ancho * inv)
     return texto
Example #3
0
 def add_size(self, text, scale=1, buff=0.1, **moreargs):
     linea_referencia = Line(self[0][0].get_start(), self[0][-1].get_end())
     texto = TextMobject(text, **moreargs)
     ancho = texto.get_height() / 2
     texto.rotate(linea_referencia.get_angle())
     texto.shift(self.direccion * (buff + 1) * ancho)
     return self.add(texto)
    def construct(self):
        eq1 = TextMobject(r"$ \vec{X}_0 \cdot \vec{Y}_1 = 3 $")
        eq1.shift(2 * UP)

        eq2 = TexMobject(r"\vec{F}_{net} = \sum_i \vec{F}_i")
        eq2.shift(2 * DOWN)

        self.play(Write(eq1))
        self.play(Write(eq2))
        self.wait()
    def construct(self):
        my_first_text = TextMobject("Writing with manim is fun")
        second_line = TextMobject("and easy to do!")
        second_line.next_to(my_first_text, DOWN)
        third_line = TextMobject("for me and you!")
        third_line.next_to(my_first_text, DOWN)

        self.add(my_first_text, second_line)
        self.wait(2)
        self.play(Transform(second_line, third_line))
        self.wait(2)
        second_line.shift(3 * DOWN)
        self.play(ApplyMethod(my_first_text.shift, 3 * UP))
        self.wait()
    def construct(self):
        eq1a = TextMobject("4x + 3y")
        eq1b = TextMobject("=")
        eq1c = TextMobject("0")

        eq2a = TextMobject("5x - 2y")
        eq2b = TextMobject("=")
        eq2c = TextMobject("3")

        eq1b.next_to(eq1a, RIGHT)
        eq1c.next_to(eq1b, RIGHT)

        eq2a.shift(DOWN)
        eq2b.shift(DOWN)
        eq2c.shift(DOWN)

        eq2a.align_to(eq1a, LEFT)
        eq2b.align_to(eq1b, LEFT)
        eq2c.align_to(eq1c, LEFT)

        eq_group = VGroup(eq1a, eq2a)
        braces = Brace(eq_group, LEFT)
        eq_text = braces.get_text("A pair of equations")

        self.add(eq1a, eq1b, eq1c)
        self.add(eq2a, eq2b, eq2c)
        self.play(GrowFromCenter(braces), Write(eq_text))

        self.wait(3)