update. /JL
This commit is contained in:
@@ -11,7 +11,7 @@ from microbit import *
|
|||||||
|
|
||||||
def get_binær(n):
|
def get_binær(n):
|
||||||
# Vi starter med at formatere vores binære streng til 5 karakterer (5 led), hvilket giver n = max 31
|
# Vi starter med at formatere vores binære streng til 5 karakterer (5 led), hvilket giver n = max 31
|
||||||
# f.eks. 10 bliver til "0b01010"
|
# f.eks. hvis n er 10, bliver den binære værdi til "0b01010"
|
||||||
bin_format = format(n, '05b')
|
bin_format = format(n, '05b')
|
||||||
|
|
||||||
# Vi fjerner "0b" fra strengen
|
# Vi fjerner "0b" fra strengen
|
||||||
|
|||||||
62
avanceret/matrix_v1.py
Normal file
62
avanceret/matrix_v1.py
Normal file
@@ -0,0 +1,62 @@
|
|||||||
|
"""
|
||||||
|
Vi vil her lave en Matrix lignende animation, med de 25 LED.
|
||||||
|
Hvad skal vi bruge?
|
||||||
|
Random kollonne valg (0 til 4)
|
||||||
|
Random lysstyrke (1 til 9)
|
||||||
|
Random faldhastighed (1 til 10)
|
||||||
|
|
||||||
|
Hvergang der faldes, skal de eksisterende LED rykkes ned på næste linie, og en ny sættes i toppen.
|
||||||
|
Når en hel kollonne har været fyldt ud, skal der ikke længere sættes en ny LED, i toppen.
|
||||||
|
Når alle LED, i en kollonne er faldet ned, startes forfra.
|
||||||
|
|
||||||
|
Der skal holdes styr, på hver eneste LED, deres lysstyrke, faldhastighed, og om de er faldet ud.
|
||||||
|
"""
|
||||||
|
from microbit import *
|
||||||
|
from collections import deque
|
||||||
|
|
||||||
|
kol_1 = [0, 0, 0, 0, 0]
|
||||||
|
kol_2 = [0, 0, 0, 0, 0]
|
||||||
|
kol_3 = [0, 0, 0, 0, 0]
|
||||||
|
kol_4 = [0, 0, 0, 0, 0]
|
||||||
|
kol_5 = [0, 0, 0, 0, 0]
|
||||||
|
|
||||||
|
d_kol_1 = deque(kol_1)
|
||||||
|
d_kol_2 = deque(kol_2)
|
||||||
|
d_kol_3 = deque(kol_3)
|
||||||
|
d_kol_4 = deque(kol_4)
|
||||||
|
d_kol_5 = deque(kol_5)
|
||||||
|
|
||||||
|
matrix = {1: d_kol_1, 2: d_kol_2, 3: d_kol_3, 4: d_kol_4, 5: d_kol_5}
|
||||||
|
|
||||||
|
|
||||||
|
# Hver LED representation, skal kun holde styr på sig selv.
|
||||||
|
class LED:
|
||||||
|
def __init__(self, kol, lys, hast):
|
||||||
|
self.kol = []
|
||||||
|
self.i_live = True # Vi starter med at være i live.
|
||||||
|
self.række = 0 # Vi starter på øverste række.
|
||||||
|
self.kollonne = kol # Vi ved hvilken kollonne vi er i.
|
||||||
|
self.lys = lys # Vi sætter vores lysstyrke.
|
||||||
|
self.hastighed = hast # Vi falder med en konstant hastighed.
|
||||||
|
self.vis_led() # Tænd led
|
||||||
|
|
||||||
|
def fald(self):
|
||||||
|
self.række += 1 # Ryk til næste række
|
||||||
|
self.lys -= 1
|
||||||
|
if self.række > 4:
|
||||||
|
self.i_live = False
|
||||||
|
else:
|
||||||
|
self.vis_led()
|
||||||
|
self.matrix.ny_led(self.kol, self.lys, self.hastighed)
|
||||||
|
|
||||||
|
def vis_led(self):
|
||||||
|
display.set_pixel(self.kollonne, self.række, self.lys)
|
||||||
|
|
||||||
|
while True:
|
||||||
|
kol = random(1, 5)
|
||||||
|
lys = random(5, 9)
|
||||||
|
hast = random(1, 10)
|
||||||
|
|
||||||
|
for k in matrix:
|
||||||
|
matrix[k].pop()
|
||||||
|
matrix[k].appendleft(0)
|
||||||
Reference in New Issue
Block a user