Sketch Processing: Jouer avec l'aléatoire - picardlimpens/JEIA GitHub Wiki
/////////////////////////////////////////////////////////////////////
//
// Jouer avec l'aléatoire
// Atelier: Le code comme outil de création, JEIA
// 24 - 02 - 2016
// Cécile Picard-Limpens
//
/////////////////////////////////////////////////////////////////////
// Définir des variables: position x, y, vitesse en x et vitesse en y
float posx=0.0; float vx=0.0;
float posy=0.0; float vy=0.0;
// Définir une variable qui compte le nombre de sortie de l'espace
int compteur=0;
// Ce qui est réalisé une seule fois, au début du programme
void setup() {
size(500,500);
// Couleur de fond
background(200);
// Epaisseur de trait de bordure (par défaut = 1)
strokeWeight(2);
// Diminuer la cadence de l'animation (par défaut = 60)
//frameRate(5);
// Le positionnement de départ est au centre de l'espace de visualisation
// width et height font directement référence aux dimensions de cet espace
posx=width/2;
posy=height/2;
}
// Ce qui est mis à jour continuellement
// à une cadence par défaut de 60 fois par secondes
void draw() {
// Couleur de remplissage: bleu
// et changement en fonction du nombre de sorties de l'espace
fill(0+compteur*10, 121, 184);
// Couleur de bordure: blanc
stroke(255);
// Tracé de figure, positionnnement en posx,posy
ellipse(posx,posy,width/100,width/100);
// Attribution des valeurs de vitesses
vx=random(-width/50,width/50); vy=random(-width/50,width/50);
// Mise à jour de la position (x,y)
posx=posx+vx; posy=posy+vy;
// Si le tracé sort de l'espace de dessin, repositionnement
if(posx<0) {
compteur++;
posx=width/2;
}
if(posx>width) {
compteur++;
posx=width/2;
}
if(posy<0) {
compteur++;
posy=height/2;
}
if(posy>height) {
compteur++;
posy=height/2;
}
// Export: lorsqu'on clic sur la souris
if(mousePressed) {
println("sauvé!");
saveFrame("img-####.jpg");
}
}