Files
@ 87caa8906582
Branch filter:
Location: light9/flax/bumppad - annotation
87caa8906582
2.3 KiB
text/plain
put correct patchdata in 2004 show
186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 186a66095036 | #!/usr/bin/env python
from __future__ import division,nested_scopes
import sys, time, math
import Tkinter as tk
sys.path.append("../light8")
import dmxclient
from TLUtility import make_attributes_from_args
from Submaster import Submaster,sub_maxes
class pad(tk.Frame):
levs = None # Submaster : level
def __init__(self,master,root,mag):
make_attributes_from_args('master','mag')
tk.Frame.__init__(self,master)
self.levs={}
for xy,key,subname in [
((1,1),'KP_Up','upstage'),
((1,3),"KP_Down",'narrow-c'),
((0,2),'KP_Left','left1'),
((2,2),'KP_Right','right1'),
((1,0),'KP_Divide','cyc'),
((0,3),"KP_End",'edge-l'),
((2,3),'KP_Next','edge-r'),
((0,4),'KP_Insert',"zip_red"),
((2,4),'KP_Delete',"zip_orange"),
((3,1),'KP_Add','zip_green'),
((3,3),'KP_Enter','zip_blue'),
((1,2),'KP_Begin','downfront'),
]:
sub = Submaster(subname)
self.levs[sub]=0
l = tk.Label(self,font="arial 12 bold",anchor='w',height=2,
relief='groove',bd=5,
text="%s\n%s" % (key.replace('KP_',''),sub.name))
l.grid(column=xy[0],row=xy[1],sticky='news')
root.bind("<KeyPress-%s>"%key,
lambda ev,sub=sub: self.bumpto(sub,1))
root.bind("<KeyRelease-%s>"%key,
lambda ev,sub=sub: self.bumpto(sub,0))
def bumpto(self,sub,lev):
now=time.time()
self.levs[sub]=lev*self.mag.get()
self.master.after_idle(self.output)
def output(self):
dmx = sub_maxes(*[s*l for s,l in self.levs.items()]).get_dmx_list()
dmxclient.outputlevels(dmx,clientid="bumppad")
root=tk.Tk()
root.tk_setPalette("maroon4")
mag = tk.DoubleVar()
pad(root,root,mag).pack(side='left',fill='both',exp=1)
magscl = tk.Scale(root,orient='vertical',from_=1,to=0,res=.01,
showval=1,variable=mag,label='mag',relief='raised',bd=1)
for i in range(1,6):
root.bind("<Key-%s>"%i,lambda ev,i=i: mag.set(math.sqrt((i )/5)))
magscl.pack(side='left',fill='y')
root.mainloop()
|