Skip to content

Commit 41d01a3

Browse files
committed
More effect names, and updated version
1 parent 6505b1f commit 41d01a3

File tree

3 files changed

+52
-23
lines changed

3 files changed

+52
-23
lines changed

.github/workflows/python-publish.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ jobs:
3232
run: python -m build
3333

3434
- name: upload dists
35-
uses: actions/upload-artifact@v3
35+
uses: actions/upload-artifact@v4
3636
with:
3737
name: release-dists
3838
path: dist/
@@ -46,7 +46,7 @@ jobs:
4646

4747
steps:
4848
- name: Retrieve release distributions
49-
uses: actions/download-artifact@v3
49+
uses: actions/download-artifact@v4
5050
with:
5151
name: release-dists
5252
path: dist/

setup.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
__version__ = '0.1.36'
1+
__version__ = '0.1.37'
22

33
_classifiers = [
44
'Development Status :: 4 - Beta',

xled_plus/sequence.py

+49-20
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,8 @@
2525

2626

2727
class Sequence(Effect):
28-
def __init__(self, ctr, seqfunc, speed, folds, angle=False):
29-
super(Sequence, self).__init__(ctr)
28+
def __init__(self, ctr, seqfunc, speed, folds, angle=False, name=""):
29+
super(Sequence, self).__init__(ctr, name)
3030
self.seqfunc = seqfunc
3131
if not ctr.layout_bounds:
3232
ctr.fetch_layout()
@@ -78,8 +78,8 @@ def getnext(self):
7878

7979

8080
class ColorSequence(Sequence):
81-
def __init__(self, ctr, cols, lens=False, speed=1.0, folds=1.0, angle=False):
82-
super(ColorSequence, self).__init__(ctr, self.getcolor, speed, folds, angle)
81+
def __init__(self, ctr, cols, lens=False, speed=1.0, folds=1.0, angle=False, name="ColorSequence"):
82+
super(ColorSequence, self).__init__(ctr, self.getcolor, speed, folds, angle, name=name)
8383
if lens is False:
8484
self.lims = [(i + 1) / len(cols) for i in range(len(cols))]
8585
else:
@@ -102,8 +102,8 @@ def getcolor(self, x):
102102

103103

104104
class GradientSequence(Sequence):
105-
def __init__(self, ctr, cols, lens=False, speed=1.0, folds=1.0, angle=0):
106-
super(GradientSequence, self).__init__(ctr, self.getcolor, speed, folds, angle)
105+
def __init__(self, ctr, cols, lens=False, speed=1.0, folds=1.0, angle=0, name="GradientSequence"):
106+
super(GradientSequence, self).__init__(ctr, self.getcolor, speed, folds, angle, name=name)
107107
if lens is False:
108108
self.lims = [float(i) / len(cols) for i in range(len(cols) + 1)]
109109
else:
@@ -132,9 +132,38 @@ def getcolor(self, x):
132132
)
133133

134134

135+
class HorizontalBandsCP(ColorSequence):
136+
def __init__(self, ctr, cols, name="HorizontalBands"):
137+
colsrgb = list(map(lambda hsl: hsl_color(*hsl), cols))
138+
folds = 1.4/(len(cols)**0.5)
139+
speed = 1.0/(10*len(cols)**0.5)
140+
super(HorizontalBandsCP, self).__init__(
141+
ctr, colsrgb, speed=speed, folds=folds, angle=0, name=name
142+
)
143+
144+
145+
class HorizontalWavesCP(GradientSequence):
146+
def __init__(self, ctr, cols, name="HorizontalWaves"):
147+
colsrgb = list(map(lambda hsl: hsl_color(*hsl), cols))
148+
folds = 0.7/(len(cols)**0.5)
149+
speed = 1.0/(10*len(cols)**0.5)
150+
super(HorizontalWavesCP, self).__init__(
151+
ctr, colsrgb, speed=speed, folds=folds, angle=0, name=name
152+
)
153+
154+
155+
class TimeSequenceCP(GradientSequence):
156+
def __init__(self, ctr, cols, name="TimeSequence"):
157+
colsrgb = list(map(lambda hsl: hsl_color(*hsl), cols))
158+
speed = 1.0/(14*len(cols)**0.5)
159+
super(TimeSequenceCP, self).__init__(
160+
ctr, colsrgb, speed=speed, folds=0.0, angle=0, name=name
161+
)
162+
163+
135164
class SpectrumSequence(Sequence):
136-
def __init__(self, ctr, lightness=0.0, angle=False):
137-
super(SpectrumSequence, self).__init__(ctr, self.getcolor, 0.2, 1.0, angle)
165+
def __init__(self, ctr, lightness=0.0, angle=False, name="SpectrumSequence"):
166+
super(SpectrumSequence, self).__init__(ctr, self.getcolor, 0.2, 1.0, angle, name=name)
138167
self.lightness = lightness
139168

140169
def getcolor(self, x):
@@ -171,14 +200,14 @@ def update(self, step):
171200

172201

173202
class RotatingAngleColorSequence(ColorSequence, RotatingAngleSequence):
174-
def __init__(self, ctr, cols, lens=False, speed=1.0, folds=1.0, angle=False, torque=False):
175-
super(RotatingAngleColorSequence, self).__init__(ctr, cols, speed=speed, folds=folds, angle=angle)
203+
def __init__(self, ctr, cols, lens=False, speed=1.0, folds=1.0, angle=False, torque=False, name="RotatingAngleColorSequence"):
204+
super(RotatingAngleColorSequence, self).__init__(ctr, cols, speed=speed, folds=folds, angle=angle, name=name)
176205
self.initialize(torque)
177206

178207

179208
class RotatingAngleGradientSequence(GradientSequence, RotatingAngleSequence):
180-
def __init__(self, ctr, cols, lens=False, speed=1.0, folds=1.0, angle=False, torque=False):
181-
super(RotatingAngleGradientSequence, self).__init__(ctr, cols, speed=speed, folds=folds, angle=angle)
209+
def __init__(self, ctr, cols, lens=False, speed=1.0, folds=1.0, angle=False, torque=False, name="RotatingAngleGradientSequence"):
210+
super(RotatingAngleGradientSequence, self).__init__(ctr, cols, speed=speed, folds=folds, angle=angle, name=name)
182211
self.initialize(torque)
183212

184213

@@ -207,20 +236,20 @@ def update(self, step):
207236

208237

209238
class VaryingAngleColorSequence(ColorSequence, VaryingAngleSequence):
210-
def __init__(self, ctr, cols, lens=False, speed=1.0, folds=3.0):
211-
super(VaryingAngleColorSequence, self).__init__(ctr, cols, speed, folds)
239+
def __init__(self, ctr, cols, lens=False, speed=1.0, folds=3.0, name="VaryingAngleColorSequence"):
240+
super(VaryingAngleColorSequence, self).__init__(ctr, cols, speed, folds, name=name)
212241
self.initialize(folds)
213242

214243

215244
class VaryingAngleGradientSequence(GradientSequence, VaryingAngleSequence):
216-
def __init__(self, ctr, cols, lens=False, speed=1.0, folds=3.0):
217-
super(VaryingAngleGradientSequence, self).__init__(ctr, cols, speed, folds)
245+
def __init__(self, ctr, cols, lens=False, speed=1.0, folds=3.0, name="VaryingAngleGradientSequence"):
246+
super(VaryingAngleGradientSequence, self).__init__(ctr, cols, speed, folds, name=name)
218247
self.initialize(folds)
219248

220249

221250
class MeanderingSequence(VaryingAngleSequence):
222-
def __init__(self, ctr, fixangle=False):
223-
super(MeanderingSequence, self).__init__(ctr, self.getcolor, 0.0, 1.0, fixangle)
251+
def __init__(self, ctr, fixangle=False, name="MeanderingSequence"):
252+
super(MeanderingSequence, self).__init__(ctr, self.getcolor, 0.0, 1.0, fixangle, name=name)
224253
self.fixangle = fixangle
225254
self.initialize(1.0)
226255
self.cm = ColorMeander("sphere")
@@ -250,8 +279,8 @@ def getcolor(self, x):
250279

251280

252281
class MeanderingTandemSequence(VaryingAngleSequence):
253-
def __init__(self, ctr, gap=False, fixangle=False):
254-
super(MeanderingTandemSequence, self).__init__(ctr, self.getcolor, 0.0, 1.0, fixangle)
282+
def __init__(self, ctr, gap=False, fixangle=False, name="MeanderingTandemSequence"):
283+
super(MeanderingTandemSequence, self).__init__(ctr, self.getcolor, 0.0, 1.0, fixangle, name=name)
255284
self.initialize(1.0)
256285
self.gap = gap
257286
self.fixangle = fixangle

0 commit comments

Comments
 (0)