forked from protonphoton/LJ
[feat] drawing optimisation
add some generator to test the optoimisation: adjust_brightness.py: set some rectangle to rerify the consant of brightnes keyborad_input.py: is an exenmple of non blocking input reading angleInteractive.py: is an interactiv version to test the angle. you can separatly set the lenght of each segment you can set the angle it must be run without brightnes optimization because mey be lenght have an importance
This commit is contained in:
parent
6994ea911f
commit
9fecb97df7
3 changed files with 412 additions and 0 deletions
77
clitools/generators/drawingTests/keyborad_input.py
Normal file
77
clitools/generators/drawingTests/keyborad_input.py
Normal file
|
|
@ -0,0 +1,77 @@
|
|||
# code exemple find at : https://stackoverflow.com/questions/2408560/python-nonblocking-console-input
|
||||
|
||||
import sys
|
||||
import select
|
||||
import tty
|
||||
import termios
|
||||
|
||||
def isData():
|
||||
return select.select([sys.stdin], [], [], 0) == ([sys.stdin], [], [])
|
||||
|
||||
old_settings = termios.tcgetattr(sys.stdin)
|
||||
|
||||
try:
|
||||
tty.setcbreak(sys.stdin.fileno())
|
||||
|
||||
i = 0
|
||||
while 1:
|
||||
#if i % 100000 == 0:
|
||||
# print("i", i)
|
||||
#i += 1
|
||||
if isData():
|
||||
c = sys.stdin.read(1)
|
||||
print(c)
|
||||
if c == '\x1b': # x1b is ESC
|
||||
break
|
||||
|
||||
finally:
|
||||
termios.tcsetattr(sys.stdin, termios.TCSADRAIN, old_settings)
|
||||
|
||||
|
||||
|
||||
### for windows
|
||||
#import msvcrt
|
||||
#
|
||||
#num = 0
|
||||
#done = False
|
||||
#while not done:
|
||||
# print(num)
|
||||
# num += 1
|
||||
#
|
||||
# if msvcrt.kbhit():
|
||||
# print "you pressed",msvcrt.getch(),"so now i will quit"
|
||||
# done = True
|
||||
#
|
||||
|
||||
## cross platforme (but may be a bit huge to import pygame...)
|
||||
#import pygame
|
||||
#from pygame.locals import *
|
||||
#
|
||||
#def display(str):
|
||||
# text = font.render(str, True, (255, 255, 255), (159, 182, 205))
|
||||
# textRect = text.get_rect()
|
||||
# textRect.centerx = screen.get_rect().centerx
|
||||
# textRect.centery = screen.get_rect().centery
|
||||
#
|
||||
# screen.blit(text, textRect)
|
||||
# pygame.display.update()
|
||||
#
|
||||
#pygame.init()
|
||||
#screen = pygame.display.set_mode( (640,480) )
|
||||
#pygame.display.set_caption('Python numbers')
|
||||
#screen.fill((159, 182, 205))
|
||||
#
|
||||
#font = pygame.font.Font(None, 17)
|
||||
#
|
||||
#num = 0
|
||||
#done = False
|
||||
#while not done:
|
||||
# display( str(num) )
|
||||
# num += 1
|
||||
#
|
||||
# pygame.event.pump()
|
||||
# keys = pygame.key.get_pressed()
|
||||
# if keys[K_ESCAPE]:
|
||||
# done = True
|
||||
#
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue