Small clean up

This commit is contained in:
Grant Sanderson 2023-01-26 23:05:09 -08:00
parent 422c9cebd2
commit 2863672740

View file

@ -1768,20 +1768,26 @@ class Mobject(object):
self.locked_data_keys = set(keys) self.locked_data_keys = set(keys)
def lock_matching_data(self, mobject1: Mobject, mobject2: Mobject): def lock_matching_data(self, mobject1: Mobject, mobject2: Mobject):
for sm, sm1, sm2 in zip(self.get_family(), mobject1.get_family(), mobject2.get_family()): tuples = zip(
if sm.data.dtype == sm1.data.dtype == sm2.data.dtype: self.get_family(),
names = sm.data.dtype.names mobject1.get_family(),
sm.lock_data(filter( mobject2.get_family(),
lambda name: arrays_match(sm1.data[name], sm2.data[name]), )
names, for sm, sm1, sm2 in tuples:
)) if not sm.data.dtype == sm1.data.dtype == sm2.data.dtype:
sm.const_data_keys = set(filter( continue
lambda name: all( names = sm.data.dtype.names
array_is_constant(mob.data[name]) sm.lock_data(filter(
for mob in (sm, sm1, sm2) lambda name: arrays_match(sm1.data[name], sm2.data[name]),
), names,
names ))
)) sm.const_data_keys = set(filter(
lambda name: all(
array_is_constant(mob.data[name])
for mob in (sm, sm1, sm2)
),
names
))
return self return self