changeset 1454:50fe80faebab

animRainbow test. KC faster frame rate Ignore-this: 419c6a70711ba3df9a234998760f8d9c
author drewp@bigasterisk.com
date Sun, 12 Jun 2016 00:26:12 +0000
parents 6906cacaa218
children 3ee8c6d13684
files light9/effect/effecteval.py light9/subclient.py show/dance2016/effect.n3
diffstat 3 files changed, 34 insertions(+), 7 deletions(-) [+]
line wrap: on
line diff
--- a/light9/effect/effecteval.py	Sun Jun 12 00:24:57 2016 +0000
+++ b/light9/effect/effecteval.py	Sun Jun 12 00:26:12 2016 +0000
@@ -91,7 +91,15 @@
             out.extend([
                 (L9['device/lowPattern%s' % n], L9['color'], literalColor(0*strength, strength, strength)) for n in range(301,308+1)
                 ])
-
+        elif self.effect == L9['effect/animRainbow']:
+            for n in range(1, 5+1):
+                col = literalColor(
+                        strength * (.5 + .5 * math.sin(songTime*6+n)),
+                        strength * (.5 + .5 * math.sin(songTime*6+2+n)),
+                        strength * (.5 + .5 * math.sin(songTime*6+4+n)))
+                out.append((L9['device/aura%s' % n], L9['color'], col))
+                
+                    
         elif self.effect == L9['effect/Strobe']:
             attr, value = effectSettings[0]
             assert attr == L9['strength']
@@ -102,9 +110,9 @@
             f = (((songTime + offset) * rate) % 1.0)
             c = (f < duty) * strength
             col = rgb_to_hex([c * 255, c * 255, c * 255])
-            return [
+            out.extend([
                 (L9['device/colorStrip'], L9['color'], Literal(col)),
-            ]
+            ])
 
         return out
         
--- a/light9/subclient.py	Sun Jun 12 00:24:57 2016 +0000
+++ b/light9/subclient.py	Sun Jun 12 00:26:12 2016 +0000
@@ -1,4 +1,5 @@
 from light9.effect.sequencer import sendToCollector
+from twisted.internet import reactor, task
 
 class SubClient:
     def __init__(self):
@@ -13,10 +14,7 @@
         self.graph.addHandler(self._send_sub)
 
     def send_levels_loop(self, delay=1000):
-        """This function assumes that we are an instance of a Tk object
-        (or at least that we have an 'after' method)"""
-        self.graph.addHandler(self.send_levels)
-        self.after(delay, self.send_levels_loop, delay)
+        task.LoopingCall(lambda: self.graph.addHandler(self.send_levels)).start(delay)
 
     def _send_sub(self):
         outputSettings = self.get_output_settings()
--- a/show/dance2016/effect.n3	Sun Jun 12 00:24:57 2016 +0000
+++ b/show/dance2016/effect.n3	Sun Jun 12 00:26:12 2016 +0000
@@ -16,6 +16,27 @@
 effect:Strobe a :Effect; rdfs:label "strobe"; :publishAttr :duty, :offset, :rate, :strength .
 
 
+effect:animRainbow a :Effect; rdfs:label "animRainbow"; :publishAttr :strength, :rate;
+
+     :setting effect:animRainbow_set1, effect:animRainbow_set10, effect:animRainbow_set11, effect:animRainbow_set12, effect:animRainbow_set13, effect:animRainbow_set14, effect:animRainbow_set15, effect:animRainbow_set16, effect:animRainbow_set17, effect:animRainbow_set18, effect:animRainbow_set19, effect:animRainbow_set6, effect:animRainbow_set7, effect:animRainbow_set8, effect:animRainbow_set9 .
+
+effect:animRainbow_set1 :device dev:aura1; :deviceAttr :zoom; :value 0.465 .
+effect:animRainbow_set10 :device dev:aura3; :deviceAttr :zoom; :value 0.477 .
+effect:animRainbow_set11 :device dev:aura4; :deviceAttr :zoom; :value 0.524 .
+effect:animRainbow_set12 :device dev:aura5; :deviceAttr :zoom; :value 0.519 .
+effect:animRainbow_set13 :device dev:aura5; :deviceAttr :ry; :value 0.509 .
+effect:animRainbow_set14 :device dev:aura4; :deviceAttr :ry; :value 0.542 .
+effect:animRainbow_set15 :device dev:aura3; :deviceAttr :ry; :value 0.485 .
+effect:animRainbow_set16 :device dev:aura2; :deviceAttr :ry; :value 0.494 .
+effect:animRainbow_set17 :device dev:aura1; :deviceAttr :ry; :value 0.463 .
+effect:animRainbow_set18 :device dev:aura1; :deviceAttr :rx; :value 0.272 .
+effect:animRainbow_set19 :device dev:aura2; :deviceAttr :rx; :value 0.310 .
+effect:animRainbow_set6 :device dev:aura3; :deviceAttr :rx; :value 0.463 .
+effect:animRainbow_set7 :device dev:aura4; :deviceAttr :rx; :value 0.672 .
+effect:animRainbow_set8 :device dev:aura5; :deviceAttr :rx; :value 0.700 .
+effect:animRainbow_set9 :device dev:aura2; :deviceAttr :zoom; :value 0.4779 .
+
+
 effect:usa a :mockupEffect; rdfs:label "USA"; :chaseOffset 0;
      :chaseTempo 120; :code "chase()"; :devices dev:colorStrip, dev:moving1;
      :fadeShape :fadeCurve1; :palette "#0000ff", "#ff0000", "#ffffff";