Parametri misti

// height=100 lines=auto
function setup() {
    background( 220 );

    // PARAMETRI
    let aperturaOcchi = random( 0, 30 );
    let aperturaBocca = random( 0, 35 );
    let sorriso = random() < 0.5;

    // ISTRUZIONI PARAMETRIZZATE
    fill(0);
    ellipse( 35,35, 10,aperturaOcchi );  // occhio sinistro
    ellipse( 65,35, 10,aperturaOcchi );  // occhio destro
    if (sorriso)
        arc( 50,60, 60,aperturaBocca, 0,PI );    // ◡
    else
        arc( 50,75, 60,aperturaBocca, PI,TWO_PI );  // ◠
}

Far disegnare un cerchio iniziale che faccia da testa [ad es. con circle(50,50,100)] preceduto da un if che imposti un colore quando la faccina sorride [ad es. fill(255,255,0)] e un altro in caso contrario [ad es. fill(200,0,0)].

Mantenendo la testa, aggiungere una nuova variabile per definire una componente cromatica [ad es. il verde] che cambi in modo proporzionale ad aperturaOcchi attraverso la funzione map(). Usare poi il valore della variabile per modificare il colore di riempimento della "testa" [ad es. con fill(255,verde,0)].