From 8732ffacf4a03690c27c142317b394aeb602864b Mon Sep 17 00:00:00 2001 From: redpanther Date: Thu, 28 Jan 2016 05:50:32 +0100 Subject: [PATCH] simplify code of effect fade.py Former-commit-id: 3c7c633e764d14c9e11c6e145289894954695c65 --- effects/fade.py | 13 +++---------- 1 file changed, 3 insertions(+), 10 deletions(-) diff --git a/effects/fade.py b/effects/fade.py index 950605d1..eb233a38 100644 --- a/effects/fade.py +++ b/effects/fade.py @@ -1,8 +1,5 @@ import hyperion, time -def setColor(rgb): - hyperion.setColor( bytearray( hyperion.ledCount * rgb)) - # Get the parameters fadeTime = float(hyperion.args.get('fade-time', 5.0)) colorStart = hyperion.args.get('color-start', (255,174,11)) @@ -15,20 +12,16 @@ color_step = ( ) # fade color +calcChannel = lambda i: min(max(int(colorStart[i] + color_step[i]*step),0),255) for step in range(256): if hyperion.abort(): break - setColor( ( - int( min(max(0, colorStart[0] + color_step[0]*step), 255) ), - int( min(max(0, colorStart[1] + color_step[1]*step), 255) ), - int( min(max(0, colorStart[2] + color_step[2]*step), 255) ) - ) ) - + hyperion.setColor( calcChannel(0),calcChannel(1),calcChannel(2) ) time.sleep( fadeTime / 256 ) # maintain color until effect end -setColor(colorEnd) +hyperion.setColor(colorEnd[0],colorEnd[1],colorEnd[2]) while not hyperion.abort(): time.sleep(1)