blob: d8ed3278083cfc0a3f5a9968dc151fb5fae43e6f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
class ScreenChecker:
"Simple screen checker showing lines and updates"
def __init__(self, matrix):
"Initialize it for given matrix"
if matrix.height >= matrix.width:
raise Exception('ScreenChecker doesn\'t support wide matrix.')
self.matrix = matrix
self.__tick__ = 0
self.__pos__ = [[0, 0] for _ in range(matrix.height)]
for i in range(0, matrix.height):
self.__pos__[i][1] = i
for y in range(0, i):
matrix.pixel(i, y, 'green')
def __pos_inc__(self, p):
p += 1
if p >= self.matrix.width:
p = 0
return p
def tick(self):
self.__tick__ += 1
if self.__tick__ > 60:
self.__tick__ = 0
for i in range(0, self.matrix.height):
self.matrix.pixel(self.__pos__[i][0], i, '000000')
self.__pos__[i][0] = self.__pos_inc__(self.__pos__[i][0])
self.__pos__[i][1] = self.__pos_inc__(self.__pos__[i][1])
self.matrix.pixel(self.__pos__[i][1], i, color='green')
return True
else:
return False
|