Passeggiata casuale

    let xPrec;
let yPrec;

function setup() {
    createCanvas( 670, 320 );
    xPrec = width/2;
    yPrec = height/2;

    background( 255 );
    stroke( 0, 70 );
}

function draw() {
    for (let i=0;  i<20;  ++i) {
        let x = xPrec + random( -3, 3 );
        let y = yPrec + random( -3, 3 );
        line( xPrec, yPrec, x, y );
        xPrec = constrain( x, 0, width );
        yPrec = constrain( y, 0, height );
    }
}
  

  

Ogni passo parte dal punto precedente e se ne allontana di una quantità casuale, fra -3 e 3 pixel in orizzontale e in verticale.


  

La linea unisce le due posizioni. In draw() manca background(), quindi il percorso resta visibile.


  

constrain() limita il valore all’intervallo indicato, per non far uscire il punto dalla tela.

Provare a usare un intervallo non simmetrico per uno dei due spostamenti, ad esempio random( -3, 4 ): la passeggiata prende una direzione prevalente.

 

La passeggiata casuale è un modello usato per fenomeni molto diversi, dal moto delle particelle sospese in un liquido (moto browniano) all’andamento dei prezzi.