Corrected variable scoping

This commit is contained in:
Tyler Winfield 2023-12-19 23:04:12 -06:00
parent fc1aefafca
commit f16e519991
3 changed files with 11 additions and 11 deletions

View file

@ -46,9 +46,9 @@ class Pulse(Animation):
def __init__(self, pixel_object, speed, color, period=5, breath=0, min_intensity=0, max_intensity=1, name=None): def __init__(self, pixel_object, speed, color, period=5, breath=0, min_intensity=0, max_intensity=1, name=None):
super().__init__(pixel_object, speed, color, name=name) super().__init__(pixel_object, speed, color, name=name)
self._period = period self._period = period
self._breath = breath self.breath = breath
self._min_intensity = min_intensity self.min_intensity = min_intensity
self._max_intensity = max_intensity self.max_intensity = max_intensity
self._generator = None self._generator = None
self.reset() self.reset()

View file

@ -55,10 +55,10 @@ class SparklePulse(Sparkle):
min_intensity=0, min_intensity=0,
name=None, name=None,
): ):
self._max_intensity = max_intensity
self._min_intensity = min_intensity
self._period = period self._period = period
self._breath = breath self.breath = breath
self.min_intensity = min_intensity
self.max_intensity = max_intensity
dotstar = len(pixel_object) == 4 and isinstance(pixel_object[0][-1], float) dotstar = len(pixel_object) == 4 and isinstance(pixel_object[0][-1], float)
super().__init__( super().__init__(
pixel_object, speed=speed, color=color, num_sparkles=1, name=name pixel_object, speed=speed, color=color, num_sparkles=1, name=name

View file

@ -322,8 +322,8 @@ def pulse_generator(period: float, animation_object, dotstar_pwm=False):
:param animation_object: An animation object to interact with. :param animation_object: An animation object to interact with.
:param dotstar_pwm: Whether to use the dostar per pixel PWM value for brightness control. :param dotstar_pwm: Whether to use the dostar per pixel PWM value for brightness control.
""" """
period = int((period + (animation_object._breath * 2)) * MS_PER_SECOND) period = int((period + (animation_object.breath * 2)) * MS_PER_SECOND)
breath = int(animation_object._breath * MS_PER_SECOND) breath = int(animation_object.breath * MS_PER_SECOND)
half_period = period // 2 half_period = period // 2
last_update = monotonic_ms() last_update = monotonic_ms()
@ -339,11 +339,11 @@ def pulse_generator(period: float, animation_object, dotstar_pwm=False):
last_pos = pos last_pos = pos
if pos > half_period: if pos > half_period:
pos = period - pos pos = period - pos
intensity = animation_object._min_intensity + ((pos / (half_period - breath)) * (animation_object._max_intensity - animation_object._min_intensity)) intensity = animation_object.min_intensity + ((pos / (half_period - breath)) * (animation_object.max_intensity - animation_object.min_intensity))
if pos < half_period and pos > (half_period - breath): if pos < half_period and pos > (half_period - breath):
intensity = animation_object._max_intensity intensity = animation_object.max_intensity
if pos > (period - breath): if pos > (period - breath):
intensity = animation_object._min_intensity intensity = animation_object.min_intensity
if dotstar_pwm: if dotstar_pwm:
fill_color = ( fill_color = (
animation_object.color[0], animation_object.color[0],