Titre du Projet
Digital Scribble
Auteur(s)
SIDONIE BOIRON, CHARLOTTE HENINGER
Intentions / Contexte
Nous voulions créer une interface pour créer un dessin participatif avec l’ordinateur. Accepter l’aléatoire qu’il peut générer et créer des illustrations graphiques abstraites.
Lors du festival nous avons enregistré les compositions que faisaient les visiteurs et nous les imprimions devant eux à l’aide du cutting-plotter, en remplaçant la lame par des crayons ou des feutres de couleurs. Une manière de redonner une matérialité à une image numérique.
Besoins / Compétences
• du bois
• du tissu conducteur et isolant type néoprène
• du fil
• un clavier d’ordinateur
• un ordinateur avec le logiciel Processing
Principe de fonctionnement
Nous avons utilisé le principe du Keyboard Hacking pour créer une interface en bois et textile avec laquelle la personne pourrait interagir. Simple et ludique, elle propose trois cercles en tissus rétro-réfléchissant sur lesquels sont brodés des indications pour savoir où appuyer. Nous avons pris un dessin vectorisé sur Illustrator que nous avons éclaté en cinq filtres. Nous les avons ensuite rentré dans notre code processing. Chaque touche correspond à un filtre. La personne décide donc quel filtre elle veut voir apparaitre et l’ordinateur va de manière aléatoire, mais toujours centré, le placer sur un écran relié à la boite.
Code
PImage img1;
PImage img2;
PImage img3;
PImage img4;
PImage img5;
PImage img6;
int i=0;
void setup () {
//taille de la fenêtre
size(displayWidth, displayHeight);
background(255);
img1 = loadImage(« filtre1.png »);
img2 = loadImage(« filtre2.png »);
img3 = loadImage(« filtre3.png »);
img4 = loadImage(« filtre4.png »);
img5 = loadImage(« filtre5.png »);
img6 = loadImage(« filtre6.png »);
}
void draw () {
// interaction entre le clavier et le dessin
// if (keyPressed) {
// if (key == ‘W’ || key == ‘w’) {
// image(img1, random(500, 700), random(300, 400), 150,150);
//random place de manière aléatoire le motif entre telle donnée et telle autre. + un nbr, un nbr = occupation du motif en pixel
// delay(100);
// }
// }
if (keyPressed) {
if (key == ‘d’ || key == ‘D’) {
save(i+ »dessin.jpg »);
i++;
delay(100);
}
} if (keyPressed) {
if (key == ‘S’ || key == ‘s’) {
image(img2, random(400, 700),
random(100, 200),400,400);
delay(100);
}
}
if (keyPressed) {
if (key == ‘w’) {
background(255); // supression du dessin – remet le background blanc
}
}
if (keyPressed) {
if (key == ‘E’ || key == ‘e’) {
image(img3, random(400, 500),
random(200, 400), 400,250); //random place de manière aléatoire le motif entre telle donnée et telle autre. + un nbr, un nbr = occupation du motif en pixel
delay(100);
}
}
if (keyPressed) {
if (key == ‘B’ || key == ‘b’) {
image(img4, random(300, 400),
random(5, 5), 650,850); //random place de manière aléatoire le motif entre telle donnée et telle autre. + un nbr, un nbr = occupation du motif en pixel
delay(100);
}
}
if (keyPressed) {
if (key == ‘ù’) {
image(img5, random(400, 700),
random(200, 400), 150,150); //random place de manière aléatoire le motif entre telle donnée et telle autre. + un nbr, un nbr = occupation du motif en pixel
delay(100);
}
}
if (keyPressed) {
if (key == ‘Y’ || key == ‘y’) {
image(img6, random(400, 700),
random(200, 400), 150,150); //random place de manière aléatoire le motif entre telle donnée et telle autre. + un nbr, un nbr = occupation du motif en pixel
delay(100);
}
}
}
Motifs
Vidéos