diff --git a/manim/mobject/geometry/arc.py b/manim/mobject/geometry/arc.py index 6d34c1c635..2eddae97e4 100644 --- a/manim/mobject/geometry/arc.py +++ b/manim/mobject/geometry/arc.py @@ -61,6 +61,10 @@ def construct(self): perpendicular_bisector, rotate_vector, ) +from manim.utils.bezier import ( + integer_interpolate, + partial_bezier_points +) if TYPE_CHECKING: from collections.abc import Iterable @@ -303,6 +307,17 @@ def get_length(self) -> float: start, end = self.get_start_and_end() return float(np.linalg.norm(start - end)) + def pointwise_become_partial( + self, + vmobject: VMobject, + a: float, + b: float, + ) -> Self: + super().pointwise_become_partial(vmobject , a , b) + if isinstance(self, TipableVMobject) and self.has_tip() and a != 0: + self.remove(self.tip) + return self + class Arc(TipableVMobject): """A circular arc.