Le langage de programmation Processing est un outil puissant pour les artistes et les développeurs qui souhaitent créer des applications interactives. Il offre une variété de fonctionnalités qui permettent de créer des expériences riches et intuitives. Une de ces fonctionnalités est la possibilité d’enregistrer la position de la souris à intervalle régulier dans un fichier texte. Cet article expliquera comment utiliser cette fonctionnalité pour créer des applications interactives plus intuitives et plus riches.
Processing : Fichiers : Enregistrer la position de la souris à intervalle régulier dans un fichier texte
Explication
- Ce programme utilise un objet PrintWriter que l’on initialise avec un fichier existant ce qui va permettre d’ajouter les données au fichier sans l’effacer lors de la création comme le ferait l’instruction createWriter()
- Un message est écrit dans le fichier à intervalle régulier, posant la base du datalogging avec stockage dans un fichier texte. Le format des données est ici « CSV like » ce qui permet de les utiliser immédiatement dans un tableur par simple copier-coller.
Ressources utiles
- Aucune
Le programme
// www.mon-cub-elec.fr
PrintWriter output = null; // initialise un objet PrintWriter pour stocker le flux de donnée à écrire dans le fichier
//PrintWriter output;
String cheminAbsoluFichier=« /home/hinault/Bureau/trans/positions.txt »;
// le fichier doit exister – chemin entier obligatoire
long seconde0=0, comptSeconde=0; // variables des secondes
void setup() {
// Create a new file in the sketch directory – fichier vide !
//output = createWriter(« positions.txt »);
output=ouvreFichier(cheminAbsoluFichier); // ouvre le fichier existant dans un PrintWriter- le fichier doit exister – chemin entier obligatoire
output.println(« ———— Debut Nouvel enregistrement ————-« ); // Ajoute la ligne au fichier
output.println(« ———— Format CSV ————-« ); // Ajoute la ligne au fichier
output.println(« secondes; valeur1; valeur2; »); // Ajoute la ligne au fichier
}
void draw() {
if (second()!=seconde0) { // si une seconde écoulée
seconde0=second(); // retient dernière seconde prise en compte
comptSeconde=comptSeconde+1; //incrémente la variable de comptage seconde
point(mouseX, mouseY); // trace un point dans la fenetre Graphique
output.print(comptSeconde+« ; »); // Write the coordinate to the PrintWriter
output.print(mouseX+« ; »); // Write the coordinate to the PrintWriter
output.print(mouseY+« ; »); // Write the coordinate to the PrintWriter
output.println(); // Ajoute saut de ligne
output.flush(); // Writes the remaining data from PrintWriter to the file
} // fin if
}
void keyPressed() {
//output.flush(); // Writes the remaining data to the file
output.close(); // Finishes the file
exit(); // Stops the program
}
PrintWriter ouvreFichier( String cheminAbsoluFichier) {
// ouvre le fichier existant dans un PrintWriter- le fichier doit exister – chemin entier obligatoire
PrintWriter pw=null;
try //obligé ici…
{
// ouvre le fichier existant – le fichier doit exister – chemin entier obligatoire
pw = new PrintWriter(new BufferedWriter(new FileWriter(cheminAbsoluFichier, true))); // true means: « append »
}
catch (IOException e)
{
// Report problem or handle it
}
return (pw); // renvoie l’objet pw
// adapté de la source suivante : http://processing.org/discourse/yabb2/YaBB.pl?num=1267767630
} // fin de ouvreFichier
Voir ici :
Articles similaires:
- Processing : Fichiers : Enregistrer des données à intervalle régulier dans un fichier texte au format CSV
- Processing : Traitement d’image : Extraction des canaux RGB ou des composantes HSV d’une image et analyse tridimensionnelle avec le logiciel libre Scilab
- SD Card : Test de l’ouverture et de l’écriture dans un fichier
- Programmer le pcDuino : Fichiers : L’appui sur un BP ajoute une ligne dans un fichier texte.
- PyQt Lab’ : Ouvrir/Enregistrer une image (QPixmap et QImage) depuis/dans un fichier
Articles Liés
- Processing : Fichiers : Enregistrer des données à intervalle régulier dans un fichier texte au format CSV
Le traitement des données est une tâche importante pour de nombreuses applications. Une des méthodes…
- Saisie d'une chaine de caractère dans Processing sélectionne fichier son
L'utilisation de Processing pour saisir une chaine de caractère et sélectionner un fichier son est…
- Processing Fichiers : Datalogging de fichier image contrôlé par le clavier.
Le traitement des fichiers est une tâche importante pour les professionnels et les particuliers. Dans…