Vai al contenuto

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 nel modo corretto per evitare di incorrere in problemi soprattutto quando distribuiamo i nostri programmi ad altre persone.

La prima regola fondamentale che dobbiamo sempre tenere a mente è che prima di poter essere utilizzati, i file devono essere caricati dal nostro sketch. Questo avviene ogni volta che lanciamo il programma.

Processing è in grado di caricare file che:

  • si trovano all'interno della cartella dello sketch
  • si trovano in una cartella qualsiasi sul computer
  • si trovano su un server accessibile via internet.

Ciascuna di queste situazioni presenta dei pro e dei contro e non esiste una soluzione che possa andare bene in tutti i casi. La prima opzione è, però, quella più comune.

Caricare file esterni in Processing

Tutti i file esterni sono generalmente inseriti in una cartella chiamata data che troviamo all'interno della cartella dello sketch.

Aggiungere file dal menu

Cliccando sul menu Sketch > Add File... si aprirà una finestra di dialogo dove andremo a selezionare il file da inserire.

Drag and drop

La seconda opzione, forse la più comoda, permette di trascinare uno o più file direttamente nella finestra di processing.

Processing drag and drop

Aggiunta manuale

Oppure è possibile aggiungere i file manualmente aprendo la cartella dello sketch dal menu Sketch > Show Sketch Folder, scorciatoia ⌘+K, creando una cartella data (se non esiste) e copiando direttamente i file all'interno di essa.

Processing aggiungere file manualmente

Consigli

Quando andremo a caricare il o i file è buona regola specificare l'estensione, ad esempio "file.txt" e fare attenzione all'uso delle lettere maiuscole: se il file si chiama immagine.jpg provare a caricare Immagine.jpgimmAgine.jpgimmagine.JPG genererà sempre un errore.

Per rendere il contenuto del file disponibile all'interno dell'interno programma, normalmente si crea una variabile globale al di fuori dei cicli di setup()draw() come avevo spiegato qui nel paragrafo scopo delle variabili.