From b7d473ff43708793cae6fce93d4dc7742f047f3c Mon Sep 17 00:00:00 2001 From: Grant Sanderson Date: Thu, 22 Dec 2022 12:03:33 -0700 Subject: [PATCH] Revert "Revert back from the needs_new_unit_normal change in favor of recomputation" This reverts commit d8deec8f813166b9bf42960acb0f6da4349712e7. --- manimlib/mobject/types/vectorized_mobject.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/manimlib/mobject/types/vectorized_mobject.py b/manimlib/mobject/types/vectorized_mobject.py index 5fc5c416..0a991930 100644 --- a/manimlib/mobject/types/vectorized_mobject.py +++ b/manimlib/mobject/types/vectorized_mobject.py @@ -100,6 +100,7 @@ class VMobject(Mobject): self.flat_stroke = flat_stroke self.needs_new_triangulation = True + self.needs_new_unit_normal = True self.triangulation = np.zeros(0, dtype='i4') super().__init__(**kwargs) @@ -771,7 +772,7 @@ class VMobject(Mobject): ]) def get_unit_normal(self, recompute: bool = False) -> Vect3: - if not recompute: + if not self.needs_new_unit_normal and not recompute: return self.data["unit_normal"][0] if self.get_num_points() < 3: @@ -788,11 +789,12 @@ class VMobject(Mobject): points[2] - points[1], ) self.data["unit_normal"][:] = normal + self.needs_new_unit_normal = False return normal def refresh_unit_normal(self): for mob in self.get_family(): - mob.get_unit_normal(recompute=True) + mob.needs_new_unit_normal = True return self # Alignment