def rect3(): fb = FrameBuffer(matrix_layout=[(0,0,0)]) fb.rect((2,1),(3,5), fill=True) expected_fb = ''' 00000000 00000000 00FFF000 00FFF000 00FFF000 00FFF000 00FFF000 00000000 ''' return arrays_equal(expected_fb, fb)
def rect2(): fb = FrameBuffer(matrix_layout=[(0,0,0)]) fb.rect((0,0),(8,8), fill=True) expected_fb = ''' FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ''' return arrays_equal(expected_fb, fb)
def rect3(): fb = FrameBuffer(matrix_layout=[(0, 0, 0)]) fb.rect((2, 1), (3, 5), fill=True) expected_fb = ''' 00000000 00000000 00FFF000 00FFF000 00FFF000 00FFF000 00FFF000 00000000 ''' return arrays_equal(expected_fb, fb)
def rect2(): fb = FrameBuffer(matrix_layout=[(0, 0, 0)]) fb.rect((0, 0), (8, 8), fill=True) expected_fb = ''' FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF ''' return arrays_equal(expected_fb, fb)
def rect4(): fb = FrameBuffer(matrix_layout=[(0,0,0)]) fb.rect((0,0),(4,5), color=1) fb.rect((2,2),(6,6), color=2) fb.rect((5,1),(3,3), color=3) fb.rect((1,5),(4,2), color=4) expected_fb = ''' 00222222 04444002 04444002 11210002 10210333 10222323 10010333 11110000 ''' return arrays_equal(expected_fb, fb)
def rect4(): fb = FrameBuffer(matrix_layout=[(0, 0, 0)]) fb.rect((0, 0), (4, 5), color=1) fb.rect((2, 2), (6, 6), color=2) fb.rect((5, 1), (3, 3), color=3) fb.rect((1, 5), (4, 2), color=4) expected_fb = ''' 00222222 04444002 04444002 11210002 10210333 10222323 10010333 11110000 ''' return arrays_equal(expected_fb, fb)
fb.line((0,0), (7,7)) fb.line((0,7), (7,0)) fb.line((fb.width-8,0), (fb.width-1,7)) fb.line((fb.width-8,7), (fb.width-1,0)) # Number UUTs endcaps() for uut in range(1,num_uuts-1): fb.draw(digits[uut], (8*uut+1, 0)) fb.show() time.sleep(3) # Brightness sequence for color in range(16): endcaps() fb.rect((8,0), (fb.width-16,8), fill=True, color=color) fb.show() time.sleep(4/16) # Horizontal line moving down for y in reversed(range(8)): endcaps() fb.line((8,y),(fb.width-9,y)) fb.show() time.sleep(4/8) def hash(color=0xF): for x in range(8, fb.width-8, 2): for y in range(0,8,2): fb.point(x, y, color=color) fb.point(x + 1, y + 1, color=color)