Campi di flusso con noise()
Direzioni assegnate a ogni punto della tela, qui calcolate con noise(). Un punto in movimento avanza a piccoli passi, ognuno nella direzione del luogo in cui si trova: nello schema le frecce indicano le direzioni, le linee i percorsi che ne risultano.
Ogni punto è un vettore con le coordinate x e y, in una posizione iniziale casuale.
In ogni punto della tela noise() restituisce un valore che viene usato come angolo, in radianti: punti vicini hanno direzioni simili.
p5.Vector.fromAngle() crea un vettore lungo un pixel nella direzione indicata dall’angolo: è lo spostamento del punto.
Ognuno degli 800 punti traccia il proprio spostamento e poi lo somma alla propria posizione: le linee seguono le stesse correnti e finiscono per addensarsi.
Provare a cambiare
scalae il moltiplicatore 12, che decide quante volte le direzioni possono girare su sé stesse.