Mercurial > code > home > repos > light9
comparison bin/curvecalc @ 362:fc87327e29c4
CC now attaches to hardware sliders and knobs. tres cool. KC gets a --sliders option to enable the sliders
author | Drew Perttula <drewp@bigasterisk.com> |
---|---|
date | Fri, 15 Jun 2007 06:04:55 +0000 |
parents | ff914126f3ea |
children | c43691ddd39e |
comparison
equal
deleted
inserted
replaced
361:ff914126f3ea | 362:fc87327e29c4 |
---|---|
226 period = (self.recent_t[-1] - self.recent_t[0]) / len(self.recent_t) | 226 period = (self.recent_t[-1] - self.recent_t[0]) / len(self.recent_t) |
227 dispatcher.send("update period", val=period) | 227 dispatcher.send("update period", val=period) |
228 self.send_dmx(t) | 228 self.send_dmx(t) |
229 | 229 |
230 def send_dmx(self,t): | 230 def send_dmx(self,t): |
231 dispatcher.send("curves to sliders", t=t) | |
231 scaledsubs=[] | 232 scaledsubs=[] |
232 for st in self.subterms: | 233 for st in self.subterms: |
233 scl = st.scaled(t) | 234 scl = st.scaled(t) |
234 scaledsubs.append(scl) | 235 scaledsubs.append(scl) |
235 out = Submaster.sub_maxes(*scaledsubs) | 236 out = Submaster.sub_maxes(*scaledsubs) |
353 root.tk_setPalette("gray50") | 354 root.tk_setPalette("gray50") |
354 toplevelat("curvecalc",root) | 355 toplevelat("curvecalc",root) |
355 root.tk_focusFollowsMouse() | 356 root.tk_focusFollowsMouse() |
356 | 357 |
357 parser = optparse.OptionParser() | 358 parser = optparse.OptionParser() |
358 options,args = parser.parse_args() | 359 parser.add_option("--sliders", action='store_true', |
360 help='use hardware sliders') | |
361 parser.add_option("--skip-music", action='store_true', | |
362 help="ignore music and smooth_music curve files") | |
363 opts, args = parser.parse_args() | |
359 | 364 |
360 try: | 365 try: |
361 song = URIRef(args[0]) | 366 song = URIRef(args[0]) |
362 except IndexError: | 367 except IndexError: |
363 raise SystemExit("song name is required, e.g. '05-mix'") | 368 raise SystemExit("song name is required, e.g. '05-mix'") |
366 music=Music() | 371 music=Music() |
367 | 372 |
368 zc = Zoomcontrol(root) | 373 zc = Zoomcontrol(root) |
369 zc.pack(side='top',fill='x') | 374 zc.pack(side='top',fill='x') |
370 | 375 |
371 curveset = Curveset() | 376 curveset = Curveset(sliders=opts.sliders) |
372 csv = Curvesetview(root,curveset) | 377 csv = Curvesetview(root, curveset) |
373 csv.pack(side='top',fill='both',exp=1) | 378 csv.pack(side='top',fill='both',exp=1) |
374 | 379 |
375 ssv = SubtermSetView(root) | 380 ssv = SubtermSetView(root) |
376 ssv.pack(side='top', fill='x') | 381 ssv.pack(side='top', fill='x') |
377 | 382 |
385 musicfilename = showconfig.songOnDisk(song) | 390 musicfilename = showconfig.songOnDisk(song) |
386 maxtime = wavelength(musicfilename) | 391 maxtime = wavelength(musicfilename) |
387 dispatcher.send("max time",maxtime=maxtime) | 392 dispatcher.send("max time",maxtime=maxtime) |
388 dispatcher.connect(lambda: maxtime, "get max time",weak=0) | 393 dispatcher.connect(lambda: maxtime, "get max time",weak=0) |
389 curveset.load(basename=os.path.join(showconfig.curvesDir(), | 394 curveset.load(basename=os.path.join(showconfig.curvesDir(), |
390 showconfig.songFilenameFromURI(song))) | 395 showconfig.songFilenameFromURI(song)), |
396 skipMusic=opts.skip_music) | |
391 | 397 |
392 subterms = [] | 398 subterms = [] |
393 sub_commands_tk(root, curveset, subterms, root, ssv, graph).pack(side='top',fill='x') | 399 sub_commands_tk(root, curveset, subterms, root, ssv, graph).pack(side='top',fill='x') |
394 | 400 |
395 try: | 401 try: |