Ableton Certified Trainer, Music Technologist, Creative Coder, Educator

Author: Federico

  • Array bidimensionali: esercizio media difficoltà (soluzione)

    Ecco la soluzione all’esercizio di difficoltà media proposto nell’articolo Array bidimensionali. Esercizio: Siete in grado di modificare lo script affinché, ad esempio, modificando i valori all’interno di size() mi venga disegnata sempre una scacchiera di 8×8 che occupi l’intera grandezza della finestra (anche quando non è quadrata)?

  • Array bidimensionali in Processing

    In programmazione gli Array sono utili per archiviare in modo ordinato una serie di informazioni. Per chi avesse bisogno di un recap, questo è l’articolo in cui ho introdotto il concetto di array e il loro utilizzo in Processing. A volte può capitare di avere a che fare con informazioni che non possono essere rappresentate in un’unica dimensione. […]

  • Esercizio: Testo psichedelico

    Oggi vi propongo un esercizio molto semplice per analizzare alcune funzioni relative al testo che non abbiamo avuto modo di approfondire nei post precedenti. L’esercizio riportato qui sotto mostra come siano sufficienti poche righe di codice per ottenere risultanti interessanti lavorando con del testo all’interno di Processing. Partiamo dal codice completo del programma: /* * Esercizio: […]

  • Font personalizzati: aggiungerli e utilizzarli

    In Processing è possibile utilizzare le font che abbiamo installato sul nostro computer all’interno dei nostri sketch. In questo post vedremo come aggiungerli al nostro programma e come utilizzarli in modo efficace. Questi argomenti saranno sicuramente utili a chi ha un background di tipo grafico e utilizza regolarmente Photoshop o Illustrator. Font vettoriali La prima funzione che […]

  • Caricare file esterni in Processing

    In tutti gli esempi visti finora abbiamo sempre utilizzato le funzioni interne di Processing per disegnare qualcosa sullo schermo. È possibile, ovviamente, caricare all’interno dei nostri sketch file esterni in vari formati come, ad esempio, font, immagini, file vettoriali, suoni e altro. Dati gli argomenti che affronteremo a breve, è importante capire come effettuare questa operazione […]

  • Testi in Processing: text(), textSize() e textAlign()

    È possibile utilizzare Processing non solo per disegnare forme, colori e animazioni sullo schermo ma anche per lavorare con testi. Avere pieno controllo delle parole sullo schermo può essere utile in diversi progetti in particolare, per esperienza personale, nelle visualizzazioni di dati dove la giusta combinazione di grafica e testo può rendere le nostre infografiche più comprensibili. […]

  • Controllare le trasformazioni: pushMatrix() e popMatrix()

    Le funzioni di trasformazione viste nell’ultimo post ci hanno dato prova di come sia possibile andare a modificare dinamicamente il sistema di coordinate di Processing. In questo articolo, introdurremo due nuove funzioni chiamate pushMatrix() e popMatrix() che, come vedremo insieme, ci permettono di avere maggiore controllo sulle trasformazioni. Matrici Ogni volta che usiamo le funzioni translate(), rotate() e scale() andiamo a modificare una matrice – in […]

  • Trasformazioni: translate(), rotate(), scale()

    Abbiamo già avuto modo all’inizio del percorso base di prendere esplorare il sistema di coordinate in Processing. Una cosa che non abbiamo affrontato in modo approfondito è che questo sistema non è statico. Esistono, infatti delle funzioni dette trasformazioni che ci permettono di modificare il nostro impianto di base. Tali funzioni sono translate(), rotate() e scale() […]

  • Funzioni ricorsive

    In programmazione definiamo ricorsive quelle funzioni che richiamo se stesse all’interno di un programma. A parole si tratta di un concetto molto semplice ma è bene fare qualche esempio per fugare ogni possibile dubbio. Prima di procedere è bene puntualizzare che quando creiamo e usiamo queste funzioni dobbiamo fare attenzione a inserire sempre una condizione di uscita altrimenti lo sketch andrà in StackOverflowError. […]

  • sin() e cos(): onde e funzioni cicliche

    Rimaniamo nel campo della trigonometria e analizziamo le funzioni sin() e cos() che, rispettivamente, ci consentono di calcolare il seno e il coseno di un angolo. Entrambe le funzioni necessitano di un solo parametro: la misura di un angolo espressa in radianti e restituiscono un numero float il cui valore è sempre compreso tra -1.0 e 1.0. Con questo snippet […]