Angoli: randians() e degrees()

Prima di passare a studiare funzioni matematiche come sin(), cos() e tan() che, come vedremo, potranno essere molto utili per i nostri esperimenti con Processing, è necessario fare una breve premessa sugli angoli. La maggior parte delle persone è abituata a misurare gli angoli con i gradi (in inglese degrees): un angolo retto è 90°, un … Continued

2D Perlin Noise

Nei due post precedenti abbiamo sempre usato la funzione noise() in modo mono dimensionale. È arrivato il momento di fare un passo in avanti e aggiungere la seconda dimensione. Ripasso: 1D Perlin Noise Quando parliamo di Perlin Noise mono dimensionale dobbiamo immaginare i valori su una linea temporale orizzontale; quando noi chiediamo alla funzione di restituirci un determinato … Continued

Altri esempi con la funzione noise()

Nell’ultimo post abbiamo analizzato la differenza tra la funzione random() e noise(). La prima, vi ricordo, restituisce dei valori assolutamente casuali che dipendono dai parametri che passiamo alla funzione; la seconda, invece, ci permette di avere una sorta di casualità controllata. I valori che vengono restituiti dalla funzione noise() hanno due caratteristiche fondamentali: sono correlati tra loro e hanno sempre … Continued

Random e Perlin Noise

In passato abbiamo utilizzato la funzione random() per rendere più interessanti i nostri sketch. Per fare un breve ripasso: vi ricordo che tale funzione accetta uno o due argomenti e restituisce sempre un numero casuale di tipo float. random(10); darà come risultato un numero compreso tra 0 e 10 mentre random(5, 10); restituirà un valore casuale compreso tra un minimo … Continued

Modulo e probabilità

L’ultima volta che abbiamo parlato di operatori matematici è stato un po’ di tempo fa. Prima di procedere con nuovi argomenti, però, è necessario studiare ancora un paio di cose legate al mondo della matematica: con il post di oggi approfondiremo l’operatore modulo e scopriremo come effettuare un semplice calcolo di probabilità nei nostri sketch. Modulo L’operatore modulo – che viene indicato dal … Continued

Librerie: estendere le funzionalità di Processing

È possibile estendere le funzionalità di base di Processing utilizzando delle librerie esterne. Una libreria non è altro che un insieme di classi, funzioni e variabili pensate e progettate con il preciso scopo di semplificare l’esecuzione di determinate operazioni che, se programmate da zero, renderebbero il nostro programma troppo verboso. L’idea che sta alla base delle librerie è di … Continued

Ricominciamo?

Sono passati un paio di mesi dall’ultimo articolo su Processing che ho pubblicato qui. Come avevo scritto nel post di conclusione della prima parte ho sentito la necessità di fermarmi a riflettere su come continuare questo progetto. I problemi emersi erano principalmente due: quali argomenti trattare e come ristrutturare i contenuti fin qui pubblicati (più … Continued

Fine (del livello base)

Se siete arrivati a leggere fino a questo post, ho una buona notizia da darvi: abbiamo finito gli argomenti base di Processing. Le fondamenta ci sono tutte e, nella pagina riassuntiva dedicata, potete ripercorrere – tutorial dopo tutorial – il percorso iniziato ben otto mesi fa. Abbiamo finito? Certo che no. Alcuni argomenti che abbiamo già trattato sarebbero da … Continued

Interazione tra oggetti

Dopo la parentesi sugli array (parte 1, parte 2), torniamo a parlare di oggetti. Una domanda che può sorgere spontanea è: possono due oggetti interagire tra loro? Riprendendo porzioni di codice che già abbiamo usato in precedenza oggi realizzeremo uno sketch in cui sarà presente un’interazione tra due oggetti: cambieremo il colore dello sfondo da nero a rosso … Continued

Array di oggetti: Bouncing Ball, parte 4

È finalmente arrivato il momento di mettere insieme quanto imparato nell’ultimo mese, programmazione ad oggetti e array, e di concludere il nostro esercizio Bouncing Ball. La domanda a cui oggi daremo, finalmente, risposta è sempre la stessa: come faccio a creare decine o centinaia di oggetti? Un array di oggetti Riprendiamo il codice dell’esercizio Bouncing Ball dove l’avevamo lasciato. Il primo … Continued