66 lines
2.1 KiB
Python

from Utils.BaseEffect import BaseEffect
from Utils.EffectParameter import slider, colorpicker
import time
class OnEffect(BaseEffect):
name = "onEffect"
desc = "LED-Band *sollte* an sein"
# Something that will be used to show descriptions and value options
# of the parameters the effect will accept, in a way, that eg the webclient can decide,
# if the parameters can be toggeled by a button/checkbox/slider/whatever
effectParameters = [
colorpicker(\
"Effect Color",\
"Choose a color for your LED's",\
[\
[0,255,255,"red"],\
[0,255,255,"green"],\
[0,255,255,"blue"]\
]\
),\
slider(\
"Effect Brightnes",\
"Choose a brightness for your LED's",\
[\
[0,100,100,"brightness"],\
]\
)\
]
def init(self):
return
#loop effect as long as not stopped
def effect(self):
time.sleep(1)
return
# for overriding by the effect, when a strip is added
def onRGBStripAdded(self,rgbStrip):
rgbStrip.RGB(\
# colorpicker red currentvalue
self.effectParameterValues[0][0],\
# colorpicker green currentvalue
self.effectParameterValues[0][1],\
# colorpicker blue currentvalue
self.effectParameterValues[0][2],\
# slider brightness currentvalue
self.effectParameterValues[1][0]\
)
return
# for overriding by the effect, when a params are updated
def onEffectParameterValuesUpdated(self):
for RGBStrip in self.effectRGBStrips():
#print(self.effectParameterValues)
RGBStrip.RGB(\
# colorpicker red currentvalue
self.effectParameterValues[0][0],\
# colorpicker green currentvalue
self.effectParameterValues[0][1],\
# colorpicker blue currentvalue
self.effectParameterValues[0][2],\
# slider brightness currentvalue
self.effectParameterValues[1][0]\
)