mirror of
https://github.com/3b1b/manim.git
synced 2025-04-13 09:47:07 +00:00
Removed separate_moving_and_static from scenes in place of cleaner get_moving_mobjects approach
This commit is contained in:
parent
8e747ddc14
commit
024a9dd3d4
3 changed files with 8 additions and 15 deletions
|
@ -229,19 +229,15 @@ class Scene(object):
|
||||||
)
|
)
|
||||||
to_remove = self.camera.extract_mobject_family_members(mobjects)
|
to_remove = self.camera.extract_mobject_family_members(mobjects)
|
||||||
|
|
||||||
self.mobjects = list_difference_update(self.mobjects, to_remove)
|
|
||||||
self.remove_foreground_mobjects(*to_remove)
|
|
||||||
self.mobjects = self.get_restructured_mobject_list(self.mobjects, to_remove)
|
self.mobjects = self.get_restructured_mobject_list(self.mobjects, to_remove)
|
||||||
self.foreground_mobjects = self.get_restructured_mobject_list(
|
self.foreground_mobjects = self.get_restructured_mobject_list(
|
||||||
self.foreground_mobjects, to_remove
|
self.foreground_mobjects, to_remove
|
||||||
)
|
)
|
||||||
|
|
||||||
self.continual_animations = filter(
|
self.continual_animations = filter(
|
||||||
lambda ca : ca not in continual_animations and \
|
lambda ca : ca not in continual_animations and \
|
||||||
ca.mobject not in to_remove,
|
ca.mobject not in to_remove,
|
||||||
self.continual_animations
|
self.continual_animations
|
||||||
)
|
)
|
||||||
|
|
||||||
return self
|
return self
|
||||||
|
|
||||||
def get_restructured_mobject_list(self, mobjects, to_remove):
|
def get_restructured_mobject_list(self, mobjects, to_remove):
|
||||||
|
@ -276,7 +272,7 @@ class Scene(object):
|
||||||
return self.add_foreground_mobjects(mobject)
|
return self.add_foreground_mobjects(mobject)
|
||||||
|
|
||||||
def remove_foreground_mobjects(self, *mobjects):
|
def remove_foreground_mobjects(self, *mobjects):
|
||||||
self.foreground_mobjects = list_difference_update(
|
self.foreground_mobjects = get_restructured_mobject_list(
|
||||||
self.foreground_mobjects,
|
self.foreground_mobjects,
|
||||||
self.camera.extract_mobject_family_members(mobjects)
|
self.camera.extract_mobject_family_members(mobjects)
|
||||||
)
|
)
|
||||||
|
|
|
@ -122,15 +122,13 @@ class ZoomedScene(Scene):
|
||||||
self.zoomed_camera.capture_mobjects(
|
self.zoomed_camera.capture_mobjects(
|
||||||
mobjects, **kwargs
|
mobjects, **kwargs
|
||||||
)
|
)
|
||||||
def separate_moving_and_static_mobjects(self, *animations):
|
def get_moving_mobjects(self, *animations):
|
||||||
moving_mobjects, static_mobjects = Scene.separate_moving_and_static_mobjects(
|
moving_mobjects = Scene.get_moving_mobjects(self, *animations)
|
||||||
self, *animations
|
|
||||||
)
|
|
||||||
if self.zoom_activated and self.little_rectangle in moving_mobjects:
|
if self.zoom_activated and self.little_rectangle in moving_mobjects:
|
||||||
# When the camera is moving, so is everything,
|
# When the camera is moving, so is everything,
|
||||||
return self.get_mobjects(), []
|
return self.mobjects
|
||||||
else:
|
else:
|
||||||
return moving_mobjects, static_mobjects
|
return moving_mobjects
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -175,11 +175,10 @@ class ThreeDScene(Scene):
|
||||||
if is_camera_rotating:
|
if is_camera_rotating:
|
||||||
self.add(self.ambient_camera_rotation)
|
self.add(self.ambient_camera_rotation)
|
||||||
|
|
||||||
def separate_moving_and_static_mobjects(self, *animations):
|
def get_moving_mobjects(self, *animations):
|
||||||
moving, static = Scene.separate_moving_and_static_mobjects(self, *animations)
|
|
||||||
if self.camera.rotation_mobject in moving:
|
if self.camera.rotation_mobject in moving:
|
||||||
return moving + static, []
|
return self.mobjects
|
||||||
return moving, static
|
return Scene.get_moving_mobjects(self, *animations)
|
||||||
|
|
||||||
##############
|
##############
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue