diff -r 8a21bec5d45f -r e4e7db2435f8 front_processing/src/Trakers/Trakers.pde --- a/front_processing/src/Trakers/Trakers.pde Tue Mar 20 18:00:55 2012 +0100 +++ b/front_processing/src/Trakers/Trakers.pde Thu Mar 22 16:00:17 2012 +0100 @@ -1,8 +1,20 @@ +/* +* This file is part of the TraKERS\Front Processing package. +* +* (c) IRI +* +* For the full copyright and license information, please view the LICENSE_FRONT +* file that was distributed with this source code. +*/ + import TUIO.*; TuioProcessing tuioClient; //Indique s'il s'agit de la main gauche. boolean oneHandLeft; +//Taille de la fenêtre +int WIDTH = 640, HEIGHT = 480; + //Port du Client TUIO int port = 80; float minDistHands = 1; @@ -11,9 +23,9 @@ /*FONCTION D'INITIALISATION Entrée : Sortie : Création de la fenêtre et du client TUIO*/ -public void setup() +void setup() { - size (640, 480); + size (WIDTH, HEIGHT); showMask(); tuioClient = new TuioProcessing(this, port); textAlign(CENTER); @@ -24,45 +36,17 @@ /*FONCTION DE DESSIN Entrée : Sortie : Appel à la fonction de traitement d'input du serveur toutes les n millisecondes*/ -public void draw() +void draw() { fill(0); tuioInput(); noStroke(); } -/*FONCTION DE RECEPTION DES MESSAGES OSC -Entrée : -Sortie : Appel aux différentes fonctions de dessin si un message est reçu*/ -public void tuioInput() -{ - noFill(); - Vector tuioCursorList = tuioClient.getTuioCursors(); - - if(tuioCursorList.size() <= 0) - { - showMask(); - refreshText("Les mains sont trop loin ou trop près.", "Je ne détecte aucune main."); - } - - if(tuioCursorList.size() == 1) - { - handleOneHand((TuioCursor)tuioCursorList.elementAt(0)); - fill(255); - refreshText("Les mains sont dans la zone de captation.", "Je détecte une main."); - } - else if(tuioCursorList.size() == 2) - { - handleBothHands(tuioCursorList); - fill(255); - refreshText("Les mains sont dans la zone de captation.", "Je détecte les deux mains."); - } -} - /*FONCTION DE GENERATION DU MASQUE Entrée : Sortie : Place des rectangles autour de la zone de dessin*/ -public void showMask() +void showMask() { background(0); fill(255); @@ -72,7 +56,7 @@ /*FONCTION DE RAFFRACHISSEMENT DU TEXTE SUPERIEUR Entrée : Texte à afficher Sortie : Place un rectangle au dessus de la zone de dessin et raffraichit le texte*/ -public void refreshText(String txt1, String txt2) +void refreshText(String txt1, String txt2) { fill(0); rect(0, 0, width, 80); @@ -81,31 +65,6 @@ text(txt2, width/2 - 20, 40); } -/*FONCTION DE GESTION DES COURBES POUR UNE MAIN DETECTEE -Entrée : Un curseur TUIO -Sortie : Appel aux différentes fonctions de dessin si un message est reçu*/ -public void handleOneHand(TuioCursor handCursor) -{ - TuioPoint pt = handCursor.getPosition();//(TuioPoint)pointList.get(j); - fill(0); - drawEllipse(pt.getX(), pt.getY(), pt.getZ(), !oneHandLeft); -} - -/*FONCTION DE GESTION DES COURBES POUR DEUX MAINS DETECTEES -Entrée : La liste des curseurs TUIO -Sortie : Appel aux différentes fonctions de dessin si un message est reçu*/ -void handleBothHands(Vector tuioCursorList) -{ - TuioCursor handLeftCursor = (TuioCursor)tuioCursorList.elementAt(0); - TuioCursor handRightCursor = (TuioCursor)tuioCursorList.elementAt(1); - TuioPoint pt; - - pt = (TuioPoint)handLeftCursor.getPosition();//handLeftPointList.get(j); - drawEllipse(pt.getX(), pt.getY(), pt.getZ(), true); - pt = (TuioPoint)handRightCursor.getPosition();//handRightPointList.get(k); - drawEllipse(pt.getX(), pt.getY(), pt.getZ(), false); -} - /*FONCTION DE DESSIN D'UN POINT DE COURBE Entrée : Coordonnées X, Y et Z d'un point Sortie : Le point est dessiné avec une épaisseur et une luminosité dépendant de Z*/ @@ -123,15 +82,8 @@ else fill(0,redColor,0); - if(weight < 30) - { - //strokeWeight(0); - } - else - { + if(weight >= 30) fill(0, 0, redColor); - } - ellipse(x+20, y+100, weight, weight); }