changeset 1421:5c4a88bf24b4

gobo rotation support on quantum (untested) Ignore-this: a7e37b544d0cd0fb76790ad95e33753
author drewp@bigasterisk.com
date Sat, 11 Jun 2016 02:49:32 +0000
parents 090e8f50bc17
children 6adeda46b71c
files light9/collector/device.py show/dance2016/deviceClass.n3
diffstat 2 files changed, 24 insertions(+), 18 deletions(-) [+]
line wrap: on
line diff
--- a/light9/collector/device.py	Sat Jun 11 02:15:59 2016 +0000
+++ b/light9/collector/device.py	Sat Jun 11 02:49:32 2016 +0000
@@ -179,18 +179,21 @@
 
         out[L9['goboChoice']] = {
             L9['open']: 0,
-            L9['spider']: 6,
-            L9['windmill']: 11,
-            L9['limbo']: 16,
-            L9['brush']: 21,
-            L9['whirlpool']: 26,
-            L9['stars']: 31,
+            L9['spider']: 36,
+            L9['windmill']: 41,
+            L9['limbo']: 46,
+            L9['brush']: 51,
+            L9['whirlpool']: 56,
+            L9['stars']: 61,
             }[deviceAttrSettings.get(L9['gobo'], L9['open'])]
+
+        # my goboSpeed deviceAttr goes 0=stopped to 1=fastest (using one direction only)
+        x = .5 + .5 * floatAttr(L9['goboSpeed'])
+        out[L9['goboSpeedHi']] = _8bit(x)
+        out[L9['goboSpeedLo']] = _8bit((x * 255) % 1.0)
         
         out.update( {
             L9['colorWheel']: 0,
-            L9['goboSpeedHi']: 0,
-            L9['goboSpeedLo']:  0,
             L9['goboStaticRotate']: 0,
             L9['prismRotation']: _8bit(floatAttr(L9['prism'])),
             L9['iris']: _8bit(floatAttr(L9['iris']) * (200/255)),
--- a/show/dance2016/deviceClass.n3	Sat Jun 11 02:15:59 2016 +0000
+++ b/show/dance2016/deviceClass.n3	Sat Jun 11 02:49:32 2016 +0000
@@ -1,15 +1,18 @@
 @prefix : <http://light9.bigasterisk.com/> .
 @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
 
-:color a :DeviceAttr;             :dataType :color .
-:rx a :DeviceAttr;                :dataType :angle .
-:ry a :DeviceAttr;                :dataType :angle .
-:uv a :DeviceAttr;                :dataType :scalar .
-:brightness a :DeviceAttr;        :dataType :scalar .
-:zoom a :DeviceAttr;              :dataType :scalar ; rdfs:comment "maybe a 'wide to narrow' type" .
-:focus a :DeviceAttr;             :dataType :scalar .
-:iris a :DeviceAttr;              :dataType :scalar .
-:quantumGoboChoice a :DeviceAttr; :dataType :choice;
+:color              a :DeviceAttr; :dataType :color .
+:rx                 a :DeviceAttr; :dataType :angle .
+:ry                 a :DeviceAttr; :dataType :angle .
+:uv                 a :DeviceAttr; :dataType :scalar .
+:brightness         a :DeviceAttr; :dataType :scalar .
+:zoom               a :DeviceAttr; :dataType :scalar ;
+  rdfs:comment "maybe make this a separate 'wide to narrow' type" .
+:focus              a :DeviceAttr; :dataType :scalar .
+:iris               a :DeviceAttr; :dataType :scalar .
+:goboSpeed          a :DeviceAttr; :dataType :scalar ;
+  rdfs:comment "0=stopped, 1=rotate the fastest".
+:quantumGoboChoice  a :DeviceAttr; :dataType :choice;
   :choice :open, :spider, :windmill, :limbo, :brush, :whirlpool, :stars .
 
 :SimpleDimmer a :DeviceClass;
@@ -104,7 +107,7 @@
 
 :MacQuantum a :DeviceClass; 
   :docs <http://www.martin.com/Martin.Download.aspx?file=/files/files/productdocuments/11_MANUALS/999/35000279b%20UM_MACQuantumProfile_EN_B.pdf>;
-  :deviceAttr :color, :rx, :ry, :zoom, :focus, :iris, :quantumGoboChoice;
+  :deviceAttr :color, :rx, :ry, :zoom, :focus, :iris, :quantumGoboChoice, :goboSpeed;
   :attr
     [ :dmxOffset 0; :outputAttr :shutter ; rdfs:comment "use 30" ],
     [ :dmxOffset 1; :outputAttr :dimmerFadeHi ],