Open
Description
Using the drawline method provided as the solution, it does not handle cases where start_byte != end_byte
properly. In end_byte
, only the LSB is set.
E.g.
S = BitsScreen()
screen = []
for _ in range(20):
screen.append(int('00000000', base=2))
S.draw_line(screen, 32, 68, 92)
for row in screen:
print(f"{row: 09b}")
results in
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00001111
11111111
11111111
00001000 <---only bit corresponding to x2 = 92 is set
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
I have tried to come up with a solution for this but could not. Could anyone provide the correct solution perhaps?