Deel 3. Recepten voor software en hardware
3.2 Gebarentaal met de Kinect
import org.openkinect.*;
import org.openkinect.processing.*;
//Verwijs naar de klasse
KinectTracker tracker;
//Maak een kinect-object aan.
Kinect kinect; float oldX= 320;
float oldY= 240;
PImage schilderij;
void setup() {
size(640,480);
kinect = new Kinect(this);
tracker = new KinectTracker();
schilderij = loadImage("schilderij.jpg");
background(schilderij);
}
void draw() {
tracker.track();
PVector v1 = tracker.getLerpedPos();
stroke(7, 146, 168, 40);
strokeWeight(10);
line(v1.x,v1.y,oldX,oldY);
oldX=v1.x;
oldY=v1.y;
}
void stop() {
tracker.quit();
super.stop();
}
3.3 Luchtpiano (of luchtgitaar)
Starten met audio
import ddf.minim.*;
AudioPlayer player;
Minim minim;
void setup(){
size(512, 200, P2D);
minim = new Minim(this);
player = minim.loadFile("beatIT2.mp3", 2048);
player.play();
}
void draw(){
background(0);
stroke(255);
for(int i = 0; i < player.left.size()-1; i++){
strokeWeight(10);
stroke( player.left.get(i)*254, 150 + player.right.get(i+1)*254, random(254));
line(i, 50 + player.left.get(i)*50, i+1, 50 + player.left.get(i+1)*50);
stroke(150 + player.right.get(i+1)*254, random(254), player.left.get(i)*254);
line(i, 75 + player.left.get(i)*50, i+1, 75 + player.left.get(i+1)*50);
stroke(150 + player.right.get(i+1)*254, player.left.get(i)*254, player.left.get(i)*254);
line(i, 100 + player.left.get(i)*50, i+1, 100 + player.left.get(i+1)*50);
stroke(40+ player.left.get(i)*254, 50 + player.right.get(i+1)*254, 20+ player.left.get(i)*254);
line(i, 125 + player.left.get(i)*50, i+1, 125 + player.left.get(i+1)*50);
stroke(random(254), 150 + player.right.get(i+1)*254, player.left.get(i)*254);
line(i, 150 + player.left.get(i)*50, i+1, 150 + player.left.get(i+1)*50);
}
}
void stop(){
player.close();
minim.stop();
super.stop();
}