class AnimArrow: def __init__(self): self.display = Display(7, 7) self.display.fill(HSVColor(0.7, 1.0, 0.4)) def paint(self, display: Display, bg_hue: float): display.copy_region_from(self.display)
def paint(self, display: Display, bg_hue: float): for pixel in self.pixels: display.set_pixel(pixel[1], pixel[2], HSVColor(pixel[0], 1.0, 1.0)) self.update_hue() self.frame += 1 if self.frame == 200: self.create_pixel() self.frame = 0
def paint(self, display: Display, bg_hue: float): for pixel in self.pixels: display.set_pixel(pixel[1], pixel[2], HSVColor(pixel[0], 1.0, 1.0)) pixel[0] += 0.002 if pixel[0] > 1.0: pixel[0] = 0.0 if abs(pixel[0] - bg_hue) < 0.01: pixel[0] = bg_hue + 0.03 pixel[1] = random.randint(0, 7) pixel[2] = random.randint(0, 7) self.frame += 1
def paint(self, display: Display, bg_hue: float): display.copy_region_from(self.display)
def __init__(self): self.display = Display(7, 7) self.display.fill(HSVColor(0.7, 1.0, 0.4))
from inputs import get_gamepad from ledwall.components import (WireMode, Display, SerialSender, HSVColor) from ledwall.games.tetris import Tetris from ledwall.components.event import (Event, EventDispatcher, FramerateEmitter, GamepadEmitter) import time from ledwall.util import TimeDelta #s = UDPSender(server='192.168.178.96') s = SerialSender(port_name='/dev/ttyACM0') d = Display(10, 10, sender=s, mode=WireMode.ZIGZAG) t = Tetris(d) t.update() hsv = HSVColor(1.0, 1.0, 1.0) def move_right(): p = t.piece if t.testOverflowX(p, dx=1) == Tetris.VALID_POSITION: p['x'] += 1 t.update() def move_left():
import sys sys.path.append('..') import random from ledwall.components import (HSVColor, Display, Color, SerialSender) s = SerialSender(port_name="/dev/ttyUSB0", baudrate=115400) d = Display(7, 7, s, framerate=60) hsv = HSVColor(0.0, 1.0, 1.0) class AnimOne: def __init__(self): self.create_pixel() self.frame = 0 def create_pixel(self): self.pixels = [[ random.random(), random.randint(0, 7), random.randint(0, 7) ] for x in range(20)] def update_hue(self): for pixel in self.pixels: pixel[0] += 0.0001 if pixel[0] > 1.0: pixel[0] = 0.0
from ledwall.components import (Display) from ledwall.util import TimeDelta td = TimeDelta() d = Display(21, 7) d.show_image('monster.png') td.begin() for i in range(10000): d.shift_right() td.measure() print(td.micros)
import sys sys.path.append('..') from ledwall.components import (SerialSender, HSVColor, Display) #s = UDPSender(server='192.168.178.96') s = SerialSender(port_name='/dev/ttyACM0') d = Display(10,10,s, framerate=30) color = HSVColor(0.,1.,1.) while True: for i in range(360): color._h = i / 360. d.fill(color,True)
import sys sys.path.append('..') from random import randint from ledwall.components import (SerialSender, Display, Color) #s = UDPSender(server='192.168.178.96') s = SerialSender(port_name='/dev/ttyACM0') d = Display(10, 10, s, framerate=10) while True: color = Color(randint(0, 255), randint(0, 255), randint(0, 255)) d.fill(color) for i in range(11): white = Color(randint(0, 255), randint(0, 255), randint(0, 255)) d.set_pixel(randint(0, d.columns), randint(0, d.rows), white) d.update()
from ledwall.components import (Display, UDPSender, HSVColor) from ledwall.games.tetris import Tetris display = Display(7,7,UDPSender(server='192.168.178.96')) game = Tetris(display) bg = HSVColor(0.0,1.0,0.4) hueDelta = 0.01 while True: display.fill(bg) game.drawPiece(game.get_new_piece()) display.update() bg._h += hueDelta
def init_led_wall(settings): cfg = settings['led_wall'] return Display(cfg["number_of_columns"], cfg["number_of_rows"], MqttSender(), framerate=cfg["framerate"])