Appearance
Générez des formes
Sur base de votre premier agencement de formes simples, créez un programme qui génère à chaque boucle un autre agencement aléatoire (à l'aide des variables et de fonctions comme random par exemple.
Chaque item doit être sauvé au format PNG. Veillez à générer des noms de fichiers différents à chaque boucle. Dans le cas contraire, Processing écrasera systématiquement vos anciens fichiers avec le dernier. La variable frameCount est très pratique pour cela. Elle sera automatiquement augmentée de 1, à chaque boucle. Elle peut donc être utilisée comme une sorte de compteur dans les noms de vos fichiers.
Lygia Pape, Livro do tempo, 1961-63
Fonctions principales
Un exemple (pas un modèle)
javascript
/* Générateur de formes */
let x1,y1,x2,y2,x3,y3,x4,y4,decalage;
let cote = 100;
function setup() {
createCanvas(740,370);
background(255);
noStroke();
frameRate(1);
decalage = cote/2;
}
function draw() {
//On place un fond gris clair à chaque boucle
fill(240);
rect(0,0,width,height);
//On déplace a forme au centre du sketch
translate(width/2-cote/2,height/2-cote/2);
//On calcule les nouvelles valeurs des variables
x1 = 0+random(-decalage,decalage);
y1 = 0+random(-decalage,decalage);
x2 = cote+random(-decalage,decalage);
y2 = 0+random(-decalage,decalage);
x3 = cote+random(-decalage,decalage);
y3 = cote+random(-decalage,decalage);
x4 = 0+random(-decalage,decalage);
y4 = cote+random(-decalage,decalage);
//On définit une couleur de remplissage (qui pourrait être différente à chaque boucle)
fill(240,50,10,200);
//On dessine la forme (qui pourrait d'ailleurs être bien plus complexe que ceci)
beginShape();
vertex(x1,y1);
vertex(x2,y2);
vertex(x3,y3);
vertex(x4,y4);
endShape(CLOSE);
//La ligne suivante, décommentée, exportera un fichier JPG de chaque forme dans le dossier du sketch, à chaque boucle donc.
//saveFrame("maForme-#####.jpg");
}
Le travail de Karel Martens est une excellente source d'inspiration.