Usare le posizioni precedenti del mouse

Muovere il cursore del mouse sopra il canvas.

// height=100 lines=auto
let posX = [];
let posY = [];
let posMax = 25;  // numero massimo di  posizioni

function draw() {
    background( 220 );

    // aggiorna gli array
    posX.unshift( mouseX );
    posY.unshift( mouseY );
    if (posX.length > posMax) {
        posX.pop();
        posY.pop();
    }

    // disegna i cerchi
    for (let i = posX.length-1;  i >= 0;  --i) {
        let diametro = posMax-i;
        circle( posX[i],posY[i], diametro );
    }
}
posX.unshift( mouseX );
posY.unshift( mouseY );

Aggiungi le attuali coordinate del cursore del mouse in cima agli array.

if (posX.length > posMax) {
    posX.pop();
    posY.pop();
}

Elimina l'ultimo elemento di ogni array, solo se il loro numero supera il valore di posMax.

for (let i = posX.length-1;  i >= 0;  --i) {

Esegue un for() dall'ultimo elemento (posX.length-1) al primo (0). Così il cerchio superiore sarà quello che avrà le coordinate correnti.

let diametro = posMax-i;

Permette di ottenere un diametro crescente in un for() con variabile di iterazione (i) decrescente.