// Sketch Processing SketchAfficheXML7.pde
// le fichier "2.xml" au format Praat TextGrid doit être placé dans le dossier data
//
/**
* Enregistrement audio "lesmaries_mme" de Guy Kayser
* Affiche au choix 5 segmentations différentes du texte faites par Olivier Baude.
* Taper: P Phonème - S Syllabe - M Mot - H Phonétique - O Orthographique
*
*/
XMLElement xml1;
XMLElement[] kid1Data, kidkid1Data;
PFont maFonte;
String monTexte = "";
int Couche = 2; //Mot
int NombreDeChild1, NombreDeChild2;
int x = 700;
String s1, s2;
void setup() {
maFonte = loadFont("Helvetica-50.vlw");
size(800, 600);
smooth();
background(255);
stroke(160);
textAlign(LEFT, TOP); //RIGHT LEFT BOTTOM BASELINE TOP
xml1 = new XMLElement(this, "2.xml");
NombreDeChild1 = xml1.getChildCount();
kid1Data = xml1.getChildren();
s1 = kid1Data[0].getName();
println(s1 + " : " + NombreDeChild1 + " child(s)");
kidkid1Data = kid1Data[0].getChildren();
s2 = kidkid1Data[1].getName();
frameRate(1);
}
void draw()
{
background(255);
textFont(maFonte, 14);
fill(0, 0, 200);
text("P Phonème", x, 500);
text("S Syllabe", x, 515);
text("M Mot", x, 530);
text("H Phonétique", x, 545);
text("O Orthographe", x, 560);
text("Echap Stop", x, 575);
NombreDeChild2 = kidkid1Data[Couche].getChildCount();
println(" " + s2 +" : " + NombreDeChild2 + " child(s)" );
println();
textFont(maFonte, 24);
fill(255, 0, 0, 100);
for (int i = 0; i < NombreDeChild2; i++) {
XMLElement kid1 = kidkid1Data[Couche].getChild(i);
int n = kid1.getInt("n");
float xmin = kid1.getFloat("xmin");
float xmax = kid1.getFloat("xmax");
String Content1 = kid1.getContent();
//println("Child(" + i + "): n = " + n + " xmin = " + xmin + " xmax = " + xmax + " " + Content1);
if (Content1 == null) {
;
}
else {
//text(Content1, 5, i * 16);
text(Content1, random(5, 790), random(5, 590));
}
}
}
void keyPressed()
{
if ( key == 'p' )
{
Couche = 0;
}
else if (key == 's')
{
Couche = 1;
}
else if (key == 'm')
{
Couche = 2;
}
else if (key == 'h')
{
Couche = 3;
}
else if (key == 'o')
{
Couche = 4;
}
else
{
println("Erreur taper p, s, m, h ou o");
}
println("Couche = " + Couche);
}