From 27a11463d735c327a8b6be84d7b64384f6b06f70 Mon Sep 17 00:00:00 2001 From: Walter Bender Date: Sun, 04 Jan 2009 13:23:50 +0000 Subject: TurtleArt with sensors features folded into TurtleArt --- diff --git a/NEWS b/NEWS index dc419ec..7a73fd5 100644 --- a/NEWS +++ b/NEWS @@ -1,3 +1,8 @@ +25 + +* added sensor panel from TurtleArt with Sensors +* catch exceptions where DC Audio is not available (non-OLPC_XO-1 hardware) + 24 * add UCB logo export diff --git a/activity/activity.info b/activity/activity.info index 9674034..3325857 100644 --- a/activity/activity.info +++ b/activity/activity.info @@ -1,6 +1,6 @@ [Activity] name = Turtle Art -activity_version = 24 +activity_version = 25 license = MIT service_name = org.laptop.TurtleArtActivity class = TurtleArtActivity.TurtleArtActivity diff --git a/images/en/sensors/foo.svg~ b/images/en/sensors/foo.svg~ new file mode 100644 index 0000000..4bb163c --- /dev/null +++ b/images/en/sensors/foo.svg~ @@ -0,0 +1,22 @@ + + + + + + diff --git a/images/en/sensors/pitch.svg b/images/en/sensors/pitch.svg new file mode 100644 index 0000000..529d615 --- /dev/null +++ b/images/en/sensors/pitch.svg @@ -0,0 +1,46 @@ + + + + + + + + + + + + + pitch + + diff --git a/images/en/sensors/resistance.svg b/images/en/sensors/resistance.svg new file mode 100644 index 0000000..ed3a744 --- /dev/null +++ b/images/en/sensors/resistance.svg @@ -0,0 +1,46 @@ + + + + + + + + + + + + + resistance + + diff --git a/images/en/sensors/sensorsgroup.svg b/images/en/sensors/sensorsgroup.svg new file mode 100644 index 0000000..abad056 --- /dev/null +++ b/images/en/sensors/sensorsgroup.svg @@ -0,0 +1,173 @@ + + + + + + + + + + + + + + + + + + + + X + + Sensors + + + + pitch + + + + voltage + + + + volume + + + + resistance + + diff --git a/images/en/sensors/sensorsmask.svg b/images/en/sensors/sensorsmask.svg new file mode 100644 index 0000000..2adecbc --- /dev/null +++ b/images/en/sensors/sensorsmask.svg @@ -0,0 +1,38 @@ + + + + + + + + + + diff --git a/images/en/sensors/voltage.svg b/images/en/sensors/voltage.svg new file mode 100644 index 0000000..1f49262 --- /dev/null +++ b/images/en/sensors/voltage.svg @@ -0,0 +1,46 @@ + + + + + + + + + + + + + voltage + + diff --git a/images/en/sensors/volume.svg b/images/en/sensors/volume.svg new file mode 100644 index 0000000..74e5ccc --- /dev/null +++ b/images/en/sensors/volume.svg @@ -0,0 +1,46 @@ + + + + + + + + + + + + + volume + + diff --git a/images/es/sensors/foo.svg~ b/images/es/sensors/foo.svg~ new file mode 100644 index 0000000..4bb163c --- /dev/null +++ b/images/es/sensors/foo.svg~ @@ -0,0 +1,22 @@ + + + + + + diff --git a/images/es/sensors/pitch.svg b/images/es/sensors/pitch.svg new file mode 100644 index 0000000..529d615 --- /dev/null +++ b/images/es/sensors/pitch.svg @@ -0,0 +1,46 @@ + + + + + + + + + + + + + pitch + + diff --git a/images/es/sensors/resistance.svg b/images/es/sensors/resistance.svg new file mode 100644 index 0000000..ed3a744 --- /dev/null +++ b/images/es/sensors/resistance.svg @@ -0,0 +1,46 @@ + + + + + + + + + + + + + resistance + + diff --git a/images/es/sensors/sensorsgroup.svg b/images/es/sensors/sensorsgroup.svg new file mode 100644 index 0000000..abad056 --- /dev/null +++ b/images/es/sensors/sensorsgroup.svg @@ -0,0 +1,173 @@ + + + + + + + + + + + + + + + + + + + + X + + Sensors + + + + pitch + + + + voltage + + + + volume + + + + resistance + + diff --git a/images/es/sensors/sensorsmask.svg b/images/es/sensors/sensorsmask.svg new file mode 100644 index 0000000..2adecbc --- /dev/null +++ b/images/es/sensors/sensorsmask.svg @@ -0,0 +1,38 @@ + + + + + + + + + + diff --git a/images/es/sensors/voltage.svg b/images/es/sensors/voltage.svg new file mode 100644 index 0000000..1f49262 --- /dev/null +++ b/images/es/sensors/voltage.svg @@ -0,0 +1,46 @@ + + + + + + + + + + + + + voltage + + diff --git a/images/es/sensors/volume.svg b/images/es/sensors/volume.svg new file mode 100644 index 0000000..74e5ccc --- /dev/null +++ b/images/es/sensors/volume.svg @@ -0,0 +1,46 @@ + + + + + + + + + + + + + volume + + diff --git a/images/fi/sensors/foo.svg~ b/images/fi/sensors/foo.svg~ new file mode 100644 index 0000000..4bb163c --- /dev/null +++ b/images/fi/sensors/foo.svg~ @@ -0,0 +1,22 @@ + + + + + + diff --git a/images/fi/sensors/pitch.svg b/images/fi/sensors/pitch.svg new file mode 100644 index 0000000..529d615 --- /dev/null +++ b/images/fi/sensors/pitch.svg @@ -0,0 +1,46 @@ + + + + + + + + + + + + + pitch + + diff --git a/images/fi/sensors/resistance.svg b/images/fi/sensors/resistance.svg new file mode 100644 index 0000000..ed3a744 --- /dev/null +++ b/images/fi/sensors/resistance.svg @@ -0,0 +1,46 @@ + + + + + + + + + + + + + resistance + + diff --git a/images/fi/sensors/sensorsgroup.svg b/images/fi/sensors/sensorsgroup.svg new file mode 100644 index 0000000..abad056 --- /dev/null +++ b/images/fi/sensors/sensorsgroup.svg @@ -0,0 +1,173 @@ + + + + + + + + + + + + + + + + + + + + X + + Sensors + + + + pitch + + + + voltage + + + + volume + + + + resistance + + diff --git a/images/fi/sensors/sensorsmask.svg b/images/fi/sensors/sensorsmask.svg new file mode 100644 index 0000000..2adecbc --- /dev/null +++ b/images/fi/sensors/sensorsmask.svg @@ -0,0 +1,38 @@ + + + + + + + + + + diff --git a/images/fi/sensors/voltage.svg b/images/fi/sensors/voltage.svg new file mode 100644 index 0000000..1f49262 --- /dev/null +++ b/images/fi/sensors/voltage.svg @@ -0,0 +1,46 @@ + + + + + + + + + + + + + voltage + + diff --git a/images/fi/sensors/volume.svg b/images/fi/sensors/volume.svg new file mode 100644 index 0000000..74e5ccc --- /dev/null +++ b/images/fi/sensors/volume.svg @@ -0,0 +1,46 @@ + + + + + + + + + + + + + volume + + diff --git a/images/fr/sensors/foo.svg~ b/images/fr/sensors/foo.svg~ new file mode 100644 index 0000000..4bb163c --- /dev/null +++ b/images/fr/sensors/foo.svg~ @@ -0,0 +1,22 @@ + + + + + + diff --git a/images/fr/sensors/pitch.svg b/images/fr/sensors/pitch.svg new file mode 100644 index 0000000..529d615 --- /dev/null +++ b/images/fr/sensors/pitch.svg @@ -0,0 +1,46 @@ + + + + + + + + + + + + + pitch + + diff --git a/images/fr/sensors/resistance.svg b/images/fr/sensors/resistance.svg new file mode 100644 index 0000000..ed3a744 --- /dev/null +++ b/images/fr/sensors/resistance.svg @@ -0,0 +1,46 @@ + + + + + + + + + + + + + resistance + + diff --git a/images/fr/sensors/sensorsgroup.svg b/images/fr/sensors/sensorsgroup.svg new file mode 100644 index 0000000..abad056 --- /dev/null +++ b/images/fr/sensors/sensorsgroup.svg @@ -0,0 +1,173 @@ + + + + + + + + + + + + + + + + + + + + X + + Sensors + + + + pitch + + + + voltage + + + + volume + + + + resistance + + diff --git a/images/fr/sensors/sensorsmask.svg b/images/fr/sensors/sensorsmask.svg new file mode 100644 index 0000000..2adecbc --- /dev/null +++ b/images/fr/sensors/sensorsmask.svg @@ -0,0 +1,38 @@ + + + + + + + + + + diff --git a/images/fr/sensors/voltage.svg b/images/fr/sensors/voltage.svg new file mode 100644 index 0000000..1f49262 --- /dev/null +++ b/images/fr/sensors/voltage.svg @@ -0,0 +1,46 @@ + + + + + + + + + + + + + voltage + + diff --git a/images/fr/sensors/volume.svg b/images/fr/sensors/volume.svg new file mode 100644 index 0000000..74e5ccc --- /dev/null +++ b/images/fr/sensors/volume.svg @@ -0,0 +1,46 @@ + + + + + + + + + + + + + volume + + diff --git a/images/mn/sensors/foo.svg~ b/images/mn/sensors/foo.svg~ new file mode 100644 index 0000000..4bb163c --- /dev/null +++ b/images/mn/sensors/foo.svg~ @@ -0,0 +1,22 @@ + + + + + + diff --git a/images/mn/sensors/pitch.svg b/images/mn/sensors/pitch.svg new file mode 100644 index 0000000..529d615 --- /dev/null +++ b/images/mn/sensors/pitch.svg @@ -0,0 +1,46 @@ + + + + + + + + + + + + + pitch + + diff --git a/images/mn/sensors/resistance.svg b/images/mn/sensors/resistance.svg new file mode 100644 index 0000000..ed3a744 --- /dev/null +++ b/images/mn/sensors/resistance.svg @@ -0,0 +1,46 @@ + + + + + + + + + + + + + resistance + + diff --git a/images/mn/sensors/sensorsgroup.svg b/images/mn/sensors/sensorsgroup.svg new file mode 100644 index 0000000..abad056 --- /dev/null +++ b/images/mn/sensors/sensorsgroup.svg @@ -0,0 +1,173 @@ + + + + + + + + + + + + + + + + + + + + X + + Sensors + + + + pitch + + + + voltage + + + + volume + + + + resistance + + diff --git a/images/mn/sensors/sensorsmask.svg b/images/mn/sensors/sensorsmask.svg new file mode 100644 index 0000000..2adecbc --- /dev/null +++ b/images/mn/sensors/sensorsmask.svg @@ -0,0 +1,38 @@ + + + + + + + + + + diff --git a/images/mn/sensors/voltage.svg b/images/mn/sensors/voltage.svg new file mode 100644 index 0000000..1f49262 --- /dev/null +++ b/images/mn/sensors/voltage.svg @@ -0,0 +1,46 @@ + + + + + + + + + + + + + voltage + + diff --git a/images/mn/sensors/volume.svg b/images/mn/sensors/volume.svg new file mode 100644 index 0000000..74e5ccc --- /dev/null +++ b/images/mn/sensors/volume.svg @@ -0,0 +1,46 @@ + + + + + + + + + + + + + volume + + diff --git a/images/pt/sensors/foo.svg~ b/images/pt/sensors/foo.svg~ new file mode 100644 index 0000000..4bb163c --- /dev/null +++ b/images/pt/sensors/foo.svg~ @@ -0,0 +1,22 @@ + + + + + + diff --git a/images/pt/sensors/pitch.svg b/images/pt/sensors/pitch.svg new file mode 100644 index 0000000..529d615 --- /dev/null +++ b/images/pt/sensors/pitch.svg @@ -0,0 +1,46 @@ + + + + + + + + + + + + + pitch + + diff --git a/images/pt/sensors/resistance.svg b/images/pt/sensors/resistance.svg new file mode 100644 index 0000000..ed3a744 --- /dev/null +++ b/images/pt/sensors/resistance.svg @@ -0,0 +1,46 @@ + + + + + + + + + + + + + resistance + + diff --git a/images/pt/sensors/sensorsgroup.svg b/images/pt/sensors/sensorsgroup.svg new file mode 100644 index 0000000..abad056 --- /dev/null +++ b/images/pt/sensors/sensorsgroup.svg @@ -0,0 +1,173 @@ + + + + + + + + + + + + + + + + + + + + X + + Sensors + + + + pitch + + + + voltage + + + + volume + + + + resistance + + diff --git a/images/pt/sensors/sensorsmask.svg b/images/pt/sensors/sensorsmask.svg new file mode 100644 index 0000000..2adecbc --- /dev/null +++ b/images/pt/sensors/sensorsmask.svg @@ -0,0 +1,38 @@ + + + + + + + + + + diff --git a/images/pt/sensors/voltage.svg b/images/pt/sensors/voltage.svg new file mode 100644 index 0000000..1f49262 --- /dev/null +++ b/images/pt/sensors/voltage.svg @@ -0,0 +1,46 @@ + + + + + + + + + + + + + voltage + + diff --git a/images/pt/sensors/volume.svg b/images/pt/sensors/volume.svg new file mode 100644 index 0000000..74e5ccc --- /dev/null +++ b/images/pt/sensors/volume.svg @@ -0,0 +1,46 @@ + + + + + + + + + + + + + volume + + diff --git a/images/ru/sensors/foo.svg~ b/images/ru/sensors/foo.svg~ new file mode 100644 index 0000000..4bb163c --- /dev/null +++ b/images/ru/sensors/foo.svg~ @@ -0,0 +1,22 @@ + + + + + + diff --git a/images/ru/sensors/pitch.svg b/images/ru/sensors/pitch.svg new file mode 100644 index 0000000..529d615 --- /dev/null +++ b/images/ru/sensors/pitch.svg @@ -0,0 +1,46 @@ + + + + + + + + + + + + + pitch + + diff --git a/images/ru/sensors/resistance.svg b/images/ru/sensors/resistance.svg new file mode 100644 index 0000000..ed3a744 --- /dev/null +++ b/images/ru/sensors/resistance.svg @@ -0,0 +1,46 @@ + + + + + + + + + + + + + resistance + + diff --git a/images/ru/sensors/sensorsgroup.svg b/images/ru/sensors/sensorsgroup.svg new file mode 100644 index 0000000..abad056 --- /dev/null +++ b/images/ru/sensors/sensorsgroup.svg @@ -0,0 +1,173 @@ + + + + + + + + + + + + + + + + + + + + X + + Sensors + + + + pitch + + + + voltage + + + + volume + + + + resistance + + diff --git a/images/ru/sensors/sensorsmask.svg b/images/ru/sensors/sensorsmask.svg new file mode 100644 index 0000000..2adecbc --- /dev/null +++ b/images/ru/sensors/sensorsmask.svg @@ -0,0 +1,38 @@ + + + + + + + + + + diff --git a/images/ru/sensors/voltage.svg b/images/ru/sensors/voltage.svg new file mode 100644 index 0000000..1f49262 --- /dev/null +++ b/images/ru/sensors/voltage.svg @@ -0,0 +1,46 @@ + + + + + + + + + + + + + voltage + + diff --git a/images/ru/sensors/volume.svg b/images/ru/sensors/volume.svg new file mode 100644 index 0000000..74e5ccc --- /dev/null +++ b/images/ru/sensors/volume.svg @@ -0,0 +1,46 @@ + + + + + + + + + + + + + volume + + diff --git a/images/tr/sensors/foo.svg~ b/images/tr/sensors/foo.svg~ new file mode 100644 index 0000000..4bb163c --- /dev/null +++ b/images/tr/sensors/foo.svg~ @@ -0,0 +1,22 @@ + + + + + + diff --git a/images/tr/sensors/pitch.svg b/images/tr/sensors/pitch.svg new file mode 100644 index 0000000..529d615 --- /dev/null +++ b/images/tr/sensors/pitch.svg @@ -0,0 +1,46 @@ + + + + + + + + + + + + + pitch + + diff --git a/images/tr/sensors/resistance.svg b/images/tr/sensors/resistance.svg new file mode 100644 index 0000000..ed3a744 --- /dev/null +++ b/images/tr/sensors/resistance.svg @@ -0,0 +1,46 @@ + + + + + + + + + + + + + resistance + + diff --git a/images/tr/sensors/sensorsgroup.svg b/images/tr/sensors/sensorsgroup.svg new file mode 100644 index 0000000..abad056 --- /dev/null +++ b/images/tr/sensors/sensorsgroup.svg @@ -0,0 +1,173 @@ + + + + + + + + + + + + + + + + + + + + X + + Sensors + + + + pitch + + + + voltage + + + + volume + + + + resistance + + diff --git a/images/tr/sensors/sensorsmask.svg b/images/tr/sensors/sensorsmask.svg new file mode 100644 index 0000000..2adecbc --- /dev/null +++ b/images/tr/sensors/sensorsmask.svg @@ -0,0 +1,38 @@ + + + + + + + + + + diff --git a/images/tr/sensors/voltage.svg b/images/tr/sensors/voltage.svg new file mode 100644 index 0000000..1f49262 --- /dev/null +++ b/images/tr/sensors/voltage.svg @@ -0,0 +1,46 @@ + + + + + + + + + + + + + voltage + + diff --git a/images/tr/sensors/volume.svg b/images/tr/sensors/volume.svg new file mode 100644 index 0000000..74e5ccc --- /dev/null +++ b/images/tr/sensors/volume.svg @@ -0,0 +1,46 @@ + + + + + + + + + + + + + volume + + diff --git a/po/TurtleArt.pot b/po/TurtleArt.pot index 43155ce..7c967b9 100644 --- a/po/TurtleArt.pot +++ b/po/TurtleArt.pot @@ -236,3 +236,24 @@ msgstr "" #: msgid "Samples" msgstr "" + +#: +msgid "Sensors" +msgstr "" + +#: +msgid "volume" +msgstr "" + +#: +msgid "pitch" +msgstr "" + +#: +msgid "voltage" +msgstr "" + +#: +msgid "resistance" +msgstr "" + diff --git a/po/en.po b/po/en.po index 21aedbe..c93b3c1 100644 --- a/po/en.po +++ b/po/en.po @@ -231,3 +231,24 @@ msgstr "" #: msgid "Samples" msgstr "" + + +#: +msgid "Sensors" +msgstr "" + +#: +msgid "volume" +msgstr "" + +#: +msgid "pitch" +msgstr "" + +#: +msgid "voltage" +msgstr "" + +#: +msgid "resistance" +msgstr "" diff --git a/po/es.po b/po/es.po index 2d81857..2da77e1 100644 --- a/po/es.po +++ b/po/es.po @@ -231,3 +231,24 @@ msgstr "" #: msgid "Samples" msgstr "" + + +#: +msgid "Sensors" +msgstr "" + +#: +msgid "volume" +msgstr "" + +#: +msgid "pitch" +msgstr "" + +#: +msgid "voltage" +msgstr "" + +#: +msgid "resistance" +msgstr "" diff --git a/po/fi.po b/po/fi.po index 8298b91..1b1b4f6 100644 --- a/po/fi.po +++ b/po/fi.po @@ -231,3 +231,24 @@ msgstr "" #: msgid "Samples" msgstr "" + + +#: +msgid "Sensors" +msgstr "" + +#: +msgid "volume" +msgstr "" + +#: +msgid "pitch" +msgstr "" + +#: +msgid "voltage" +msgstr "" + +#: +msgid "resistance" +msgstr "" diff --git a/po/fr.po b/po/fr.po index 9c8faf7..6715e61 100644 --- a/po/fr.po +++ b/po/fr.po @@ -230,3 +230,24 @@ msgstr "" #: msgid "Samples" msgstr "" + + +#: +msgid "Sensors" +msgstr "" + +#: +msgid "volume" +msgstr "" + +#: +msgid "pitch" +msgstr "" + +#: +msgid "voltage" +msgstr "" + +#: +msgid "resistance" +msgstr "" diff --git a/po/mn.po b/po/mn.po index 1694de2..86c192c 100644 --- a/po/mn.po +++ b/po/mn.po @@ -170,3 +170,23 @@ msgstr "x тзнхлзг" msgid "ycor" msgstr "y тзнхлзг" + +#: +msgid "Sensors" +msgstr "" + +#: +msgid "volume" +msgstr "" + +#: +msgid "pitch" +msgstr "" + +#: +msgid "voltage" +msgstr "" + +#: +msgid "resistance" +msgstr "" diff --git a/po/pt.po b/po/pt.po index 372a086..eb12213 100644 --- a/po/pt.po +++ b/po/pt.po @@ -231,3 +231,24 @@ msgstr "" #: msgid "Samples" msgstr "" + + +#: +msgid "Sensors" +msgstr "" + +#: +msgid "volume" +msgstr "" + +#: +msgid "pitch" +msgstr "" + +#: +msgid "voltage" +msgstr "" + +#: +msgid "resistance" +msgstr "" diff --git a/po/ru.po b/po/ru.po index 9b42168..180261a 100644 --- a/po/ru.po +++ b/po/ru.po @@ -231,3 +231,24 @@ msgstr "Проект" #: msgid "Samples" msgstr "Примеры" + + +#: +msgid "Sensors" +msgstr "" + +#: +msgid "volume" +msgstr "" + +#: +msgid "pitch" +msgstr "" + +#: +msgid "voltage" +msgstr "" + +#: +msgid "resistance" +msgstr "" diff --git a/po/tr.po b/po/tr.po index 847903f..b213b15 100644 --- a/po/tr.po +++ b/po/tr.po @@ -231,3 +231,24 @@ msgstr "" #: msgid "Samples" msgstr "" + + +#: +msgid "Sensors" +msgstr "" + +#: +msgid "volume" +msgstr "" + +#: +msgid "pitch" +msgstr "" + +#: +msgid "voltage" +msgstr "" + +#: +msgid "resistance" +msgstr "" diff --git a/talogo.py b/talogo.py index 77a772a..a05321e 100644 --- a/talogo.py +++ b/talogo.py @@ -22,8 +22,12 @@ import re from time import clock from operator import isNumberType import random +import audioop from math import sqrt +from numpy.oldnumeric import * +from numpy.fft import * class taLogo: pass +from audiograb import AudioGrab from taturtle import * @@ -280,6 +284,11 @@ def lcNew(tw): defprim(lc,'not', 1, lambda lc,x:not x) defprim(lc,'%', None, lambda lc,x,y:x%y) defprim(lc,'sqrt', 1, lambda lc,x: sqrt(x)) + + defprim(lc,'sensor_val0', 0, lambda lc: sensor_val(lc, 0)) + defprim(lc,'sensor_val1', 0, lambda lc: sensor_val(lc, 1)) + defprim(lc,'sensor_val2', 0, lambda lc: sensor_val(lc, 2)) + defprim(lc,'sensor_val3', 0, lambda lc: sensor_val(lc, 3)) defprim(lc,'clean', 0, lambda lc: clearscreen(lc.tw.turtle)) defprim(lc,'forward', 1, lambda lc, x: forward(lc.tw.turtle, x)) @@ -385,3 +394,12 @@ def setbox(lc, name,val): lc.boxes[name]=val def tyo(n): print n def millis(): return int(clock()*1000) + +def sensor_val(lc, y): + return_this = 0 + ag = AudioGrab() + return_this = ag.get_sensor_val(y) + if y==3: + return_this = ag.get_sensor_val(y) + + return return_this diff --git a/tasetup.py b/tasetup.py index bdc0271..b6442d6 100644 --- a/tasetup.py +++ b/tasetup.py @@ -66,6 +66,11 @@ selectors = ( ('or','or','and'), ('not','not','not'), ('print','print','onearg'))), + ('sensors', 55, + (('volume','sensor_val0','num'), + ('pitch','sensor_val1','num'), + ('resistance','sensor_val2','num'), + ('voltage','sensor_val3','num'))), ('flow', 55, (('wait','wait','onearg',10), ('forever','forever','forever'), -- cgit v0.9.1