aboutsummaryrefslogtreecommitdiff
path: root/behaviors
diff options
context:
space:
mode:
authorGravatar eugue <eug.sun@gmail.com>2011-02-12 20:09:41 -0500
committerGravatar eugue <eug.sun@gmail.com>2011-02-12 20:09:41 -0500
commit1e8b07e52c8b15b9bf4d9dc357f56bc8bbccc718 (patch)
treecb80c07023d8f4781d95e23f989976093f7c9d5d /behaviors
parent9e342041f05e88f8d1987a48fdcdc10c14ef095f (diff)
parenta239c7accdc634459d2db014b8d8b6d5b78bab1b (diff)
Merge branch 'master' of github.com:rcoh/SmootLight into behavior-factory
Diffstat (limited to 'behaviors')
-rw-r--r--behaviors/ColorShift.py16
-rw-r--r--behaviors/ModulateColor.py16
2 files changed, 32 insertions, 0 deletions
diff --git a/behaviors/ColorShift.py b/behaviors/ColorShift.py
new file mode 100644
index 0000000..f185b40
--- /dev/null
+++ b/behaviors/ColorShift.py
@@ -0,0 +1,16 @@
+import util.ColorOps as colorOps
+from operationscore.Behavior import *
+import colorsys
+class ColorShift(Behavior):
+ def processResponse(self, sensor, recurs):
+ ret = []
+ for data in sensor:
+ if not 'HSV' in data:
+ data['HSV'] = list(colorsys.rgb_to_hsv(*data['Color']))
+
+ data['HSV'][0] += .01
+ if data['HSV'][0] >= 360:
+ data['HSV'][0] = 0
+ data['Color'] = colorsys.hsv_to_rgb(*data['HSV'])
+ ret.append(data)
+ return (ret,[])
diff --git a/behaviors/ModulateColor.py b/behaviors/ModulateColor.py
new file mode 100644
index 0000000..904526e
--- /dev/null
+++ b/behaviors/ModulateColor.py
@@ -0,0 +1,16 @@
+import util.ColorOps as colorOps
+from operationscore.Behavior import *
+import colorsys
+class ColorShift(Behavior):
+ def processResponse(self, sensor, recurs):
+ ret = []
+ for data in sensor:
+ if not 'HSV' in data:
+ data['HSV'] = colorsys.rgb_to_hsv(data['Color'])
+
+ data['HSV'][0] += .5
+ if data['HSV'][0] >= 360:
+ data['HSV'][0] = 0
+ data['Color'] = colorsys.hsv_to_rgb(data['HSV'])
+ ret.append(data)
+ return (ret,[])