def write_integral_symbol(self):
    integral = TexMobject('\\int', '^8', '_0', 'v(t)', '\\,dt')
    integral.to_corner((UP + RIGHT))
    int_copy = integral.get_part_by_tex('int').copy()
    bounds = list(map(integral.get_part_by_tex, ['0', '8']))
    sum_word = TextMobject("``Sum''")
    sum_word.next_to(integral, DOWN, MED_LARGE_BUFF, LEFT)
    alt_sum_word = sum_word.copy()
    int_symbol = TexMobject('\\int')
    int_symbol.replace(alt_sum_word[1], dim_to_match=1)
    alt_sum_word.submobjects[1] = int_symbol
    self.play(FadeOut(self.dt_example_text))
    self.play(Write(integral.get_part_by_tex('int')))
    self.wait()
    self.play(Transform(int_copy, int_symbol))
    self.play(Write(alt_sum_word), Animation(int_copy))
    self.remove(int_copy)
    self.play(ReplacementTransform(alt_sum_word, sum_word))
    self.wait()
    for bound in bounds:
        self.play(Write(bound))
    self.wait()
    for (bound, num) in zip(bounds, [0, 8]):
        bound_copy = bound.copy()
        point = self.coords_to_point(num, 0)
        self.play(bound_copy.scale, 1.5, bound_copy.next_to, point, DOWN, MED_LARGE_BUFF)
    self.play(ApplyWave(self.ticks, direction=UP))
    self.wait()
    for (mob, tex) in ((self.v_t, 'v(t)'), (self.dt_label, 'dt')):
        self.play(ReplacementTransform(mob.copy().set_color(YELLOW), integral.get_part_by_tex(tex), run_time=2))
    self.wait()
    self.integral = integral
    self.sum_word = sum_word
def write_integral_symbol(self):
    integral = TexMobject('\\int', '^8', '_0', 'v(t)', '\\,dt')
    integral.to_corner((UP + RIGHT))
    int_copy = integral.get_part_by_tex('int').copy()
    bounds = list(map(integral.get_part_by_tex, ['0', '8']))
    sum_word = TextMobject("``Sum")
    sum_word.next_to(integral, DOWN, MED_LARGE_BUFF, LEFT)
    alt_sum_word = sum_word.copy()
    int_symbol = TexMobject('\\int')
    int_symbol.replace(alt_sum_word[1], dim_to_match=1)
    alt_sum_word.submobjects[1] = int_symbol
    self.play(FadeOut(self.dt_example_text))
    self.play(Write(integral.get_part_by_tex('int')))
    self.wait()
    self.play(Transform(int_copy, int_symbol))
    self.play(Write(alt_sum_word), Animation(int_copy))
    self.remove(int_copy)
    self.play(ReplacementTransform(alt_sum_word, sum_word))
    self.wait()
    for bound in bounds:
        self.play(Write(bound))
    self.wait()
    for (bound, num) in zip(bounds, [0, 8]):
        bound_copy = bound.copy()
        point = self.coords_to_point(num, 0)
        self.play(bound_copy.scale, 1.5, bound_copy.next_to, point, DOWN, MED_LARGE_BUFF)
    self.play(ApplyWave(self.ticks, direction=UP))
    self.wait()
    for (mob, tex) in ((self.v_t, 'v(t)'), (self.dt_label, 'dt')):
        self.play(ReplacementTransform(mob.copy().set_color(YELLOW), integral.get_part_by_tex(tex), run_time=2))
    self.wait()
    self.integral = integral
    self.sum_word = sum_word