5 Commits

Author SHA1 Message Date
topsinoty
750f1100a6 refactor: read the code and remake to match DiskoPidu 2026-01-02 02:36:11 +02:00
topsinoty
ffa77db057 use _lm.tempo and set sleep to 0 2025-12-21 16:10:41 +02:00
topsinoty
a71201d90a change to pascal case. 2025-12-21 16:01:37 +02:00
topsinoty
d811b853a1 change lib source to module 2025-12-21 15:54:53 +02:00
topsinoty
6d9c4b2f33 add generated christmas lights 2025-12-21 15:31:39 +02:00
13 changed files with 57 additions and 19 deletions

View File

@@ -1,7 +1,7 @@
from pyleds.lib.Config import Config from lib.Config import Config
from pyleds.lib.LoopSwitch import LoopSwitch from lib.LoopSwitch import LoopSwitch
from pyleds.lib.Regions import Regions from lib.Regions import Regions
from pyleds.lib.Tempo import Tempo from lib.Tempo import Tempo
class Litsimaja(object): class Litsimaja(object):

View File

@@ -1,5 +1,5 @@
from pyleds.lib.Litsimaja import Litsimaja from lib.Litsimaja import Litsimaja
from pyleds.lib.LoopSwitch import LoopSwitch from lib.LoopSwitch import LoopSwitch
class Program: class Program:

View File

@@ -1,6 +1,6 @@
from os import scandir from os import scandir
from pyleds.lib.Litsimaja import Litsimaja from lib.Litsimaja import Litsimaja
from pyleds.lib.Program import Program from lib.Program import Program
def resolve(namespace: str, class_name: str): def resolve(namespace: str, class_name: str):

View File

@@ -1,5 +1,5 @@
import atexit import atexit
from pyleds.lib.Color import Color from lib.Color import Color
class _LedData(object): class _LedData(object):

View File

@@ -1,7 +1,7 @@
from threading import Thread from threading import Thread
from tkinter import Tk, Label from tkinter import Tk, Label
from FakeStrip import FakeStrip from .FakeStrip import FakeStrip
from pyleds.lib.Color import Color_to_list from lib.Color import Color_to_list
from time import sleep from time import sleep
import numpy as np import numpy as np
from PIL import Image, ImageTk from PIL import Image, ImageTk

View File

@@ -1,6 +1,6 @@
from threading import Thread from threading import Thread
from tkinter import Tk, Canvas from tkinter import Tk, Canvas
from pyleds.lib.strip.FakeStrip import FakeStrip from lib.strip.FakeStrip import FakeStrip
import time import time

View File

@@ -2,7 +2,7 @@
# Ported by Peter # Ported by Peter
# Palun! # Palun!
from pyleds.lib.Program import Program from lib.Program import Program
import time import time
import random import random

View File

@@ -3,7 +3,7 @@
# Mis m6tted tulevad kui kuuled "MegaMix"? # Mis m6tted tulevad kui kuuled "MegaMix"?
# m6tlen et millal jooma saaks hakata # m6tlen et millal jooma saaks hakata
from pyleds.lib.Program import Program from lib.Program import Program
import time import time
import random import random

View File

@@ -0,0 +1,38 @@
from lib.Program import Program
from rpi_ws281x import Color
import time
def name():
return 'Christmas Lights'
class ChristmasLights(Program):
def christmas_pattern(self, offset, segment_length=2):
RED = Color(255, 0, 0)
GREEN = Color(0, 255, 0)
WARM_WHITE = Color(200, 180, 60)
colors = [RED, GREEN, WARM_WHITE]
totalLength = self._lm.count_pixels()
for i in range(totalLength):
color_index = ((i + offset) // segment_length) % len(colors)
self._lm.set_pixel_color(i, colors[color_index])
self._lm.show()
return len(colors) * segment_length
def run(self, args=None):
# Fsr the application in the run file is different from
# the configuration in the Program and ProgramLoading files
loop = args.get("loop", False) if args else False
offset = 0
segment_length = 2
while self.get_loop().status():
self._lm.get_tempo().wait()
cycle_limit = self.christmas_pattern(offset, segment_length)
offset = (offset + 1) % cycle_limit
if not loop:
break

View File

@@ -1,4 +1,4 @@
from pyleds.lib.Program import Program from lib.Program import Program
from rpi_ws281x import Color from rpi_ws281x import Color
import time import time

View File

@@ -1,4 +1,4 @@
from pyleds.lib.Program import Program from lib.Program import Program
import time import time

View File

@@ -1,4 +1,4 @@
from pyleds.lib.Program import Program from lib.Program import Program
def name(): def name():

View File

@@ -1,5 +1,5 @@
from pyleds.lib.Program import Program from lib.Program import Program
from pyleds.lib.Litsimaja import Litsimaja from lib.Litsimaja import Litsimaja
def Color(red, green, blue): def Color(red, green, blue):