| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109 |
- try:
- import framebuf
- except ImportError:
- print("SKIP")
- raise SystemExit
- w = 5
- h = 16
- size = w * h // 8
- buf = bytearray(size)
- maps = {framebuf.MONO_VLSB : 'MONO_VLSB',
- framebuf.MONO_HLSB : 'MONO_HLSB',
- framebuf.MONO_HMSB : 'MONO_HMSB'}
- for mapping in maps.keys():
- for x in range(size):
- buf[x] = 0
- fbuf = framebuf.FrameBuffer(buf, w, h, mapping)
- print(maps[mapping])
- # access as buffer
- print(memoryview(fbuf)[0])
- # fill
- fbuf.fill(1)
- print(buf)
- fbuf.fill(0)
- print(buf)
- # put pixel
- fbuf.pixel(0, 0, 1)
- fbuf.pixel(4, 0, 1)
- fbuf.pixel(0, 15, 1)
- fbuf.pixel(4, 15, 1)
- print(buf)
- # clear pixel
- fbuf.pixel(4, 15, 0)
- print(buf)
- # get pixel
- print(fbuf.pixel(0, 0), fbuf.pixel(1, 1))
- # hline
- fbuf.fill(0)
- fbuf.hline(0, 1, w, 1)
- print('hline', buf)
- # vline
- fbuf.fill(0)
- fbuf.vline(1, 0, h, 1)
- print('vline', buf)
- # rect
- fbuf.fill(0)
- fbuf.rect(1, 1, 3, 3, 1)
- print('rect', buf)
- #fill rect
- fbuf.fill(0)
- fbuf.fill_rect(0, 0, 0, 3, 1) # zero width, no-operation
- fbuf.fill_rect(1, 1, 3, 3, 1)
- print('fill_rect', buf)
- # line
- fbuf.fill(0)
- fbuf.line(1, 1, 3, 3, 1)
- print('line', buf)
- # line steep negative gradient
- fbuf.fill(0)
- fbuf.line(3, 3, 2, 1, 1)
- print('line', buf)
- # scroll
- fbuf.fill(0)
- fbuf.pixel(2, 7, 1)
- fbuf.scroll(0, 1)
- print(buf)
- fbuf.scroll(0, -2)
- print(buf)
- fbuf.scroll(1, 0)
- print(buf)
- fbuf.scroll(-1, 0)
- print(buf)
- fbuf.scroll(2, 2)
- print(buf)
- # print text
- fbuf.fill(0)
- fbuf.text("hello", 0, 0, 1)
- print(buf)
- fbuf.text("hello", 0, 0, 0) # clear
- print(buf)
- # char out of font range set to chr(127)
- fbuf.text(str(chr(31)), 0, 0)
- print(buf)
- print()
- # test invalid constructor, and stride argument
- try:
- fbuf = framebuf.FrameBuffer(buf, w, h, -1, w)
- except ValueError:
- print("ValueError")
- # test legacy constructor
- fbuf = framebuf.FrameBuffer1(buf, w, h)
- fbuf = framebuf.FrameBuffer1(buf, w, h, w)
- print(framebuf.MVLSB == framebuf.MONO_VLSB)
|