p = CustomColorChanger(name="bluechase") elementid = 0 for i in range(1, 360, 3): elementid += 1 l = RGBLight( start_channel=i, name="pulse_%s" % elementid, attack_duration=1, decay_duration=.8, release_duration=0, sustain_value=0, ) l.hue = random() l.saturation = 1 l.update_rgb() # l.simple = True # add the light to the network dmx3.add_element(l) p.elements.append(l) show.add_element(p) # set the input interface to trigger the element # midi code 70 is the "J" key on the qwerty keyboard for the midikeys app dispatcher.add_observer((0, 70), p) # startup the midi communication - runs in its own thread dispatcher.start() # start the show in a try block so that we can catch ^C and stop the midi # dispatcher thread
# create an input interface dispatcher = MidiDispatcher("MidiKeys") osc_dispatcher = OSCDispatcher(('0.0.0.0', 8998)) # create a single RGB light element single = RGBLight( start_channel=10, name="singletestb", attack_duration=0, decay_duration=0, release_duration=.75, sustain_value=1, ) single.hue = random.random() single.saturation = 1 single.update_rgb() single.bell_mode = True oscsingle = RGBLight( start_channel=91, name="singletestb", attack_duration=0, decay_duration=0, release_duration=.75, sustain_value=1, ) oscsingle.hue = random.random() oscsingle.saturation = 1 oscsingle.update_rgb()
) elementid = 0 for i in range(1,360,3): elementid += 1 l = RGBLight( start_channel=i, name="pulse_%s" % elementid, attack_duration=0, release_duration=0, sustain_value=1, ) # l.hue = random.random() * 255 l.hue = .74 l.saturation = 1 l.update_rgb() # l.simple = True # add the light to the network dmx3.add_element(l) p.elements.append(l) osc_dispatcher.add_map('/2/fader2', l, 'hue') p.start_pos = 12 # p.left_width = p.right_width = 10 p.left_width = 10 p.right_width = 10 p.left_shape = p.right_shape = tween.OUT_CIRC p.speed = 3 p.moveto = p.end_pos = 65 p.trigger_toggle = True