Presentazione processing 04/11/2016

Post on 22-Jan-2018

71 views 0 download

Transcript of Presentazione processing 04/11/2016

Processing E arte digitale

Daniele Barattieri di San Pietro

21/10/2016 Daniele Barattieri2

Bio - Daniele

● Studente di Ing Informatica● Sedicente Digital Artist● Programmatore● InfoSec wannabe● Presidente µHack● Lavoro

21/10/2016 Daniele Barattieri3

Download

● Sito ufficiale: https://processing.org/

● Scompattate e avviate...

21/10/2016 Daniele Barattieri4

Dove eravamo rimasti?

21/10/2016 Daniele Barattieri5

Pronti? :D

21/10/2016 Daniele Barattieri6

Andiamo!

21/10/2016 Daniele Barattieri7

Oggetti e Classi

● Cos’è? Perché? Com’è?! – Variabili e funzioni concettualmente legate– La programmazione ad oggetti torna

particolarmente comoda con Processing– Stessa struttura, sintassi logica di gestione

classi di Java

● Classe: atto ● Oggetti: potenza

Good Guy Processing!

21/10/2016 Daniele Barattieri8

...concettualmente

21/10/2016 Daniele Barattieri9

Nuova tab+

● Apriamo una nuova pagina dal menu

● Diamo un nome

21/10/2016 Daniele Barattieri10

Vediamo un po'...

21/10/2016 Daniele Barattieri11

E come si usano?

● La prima riga crea una variabile di tipo Faccina

● Dopo la riempiamo di un oggetto Faccina

● E in fine la chiamiamo il metodo “disegnami”

21/10/2016 Daniele Barattieri12

Risultati?

21/10/2016 Daniele Barattieri13

Si ma dove sta la parte interessante?

● La Programmazione orientata agli oggetti (O.O.P.) è estremamente comoda nel gestire vari operatori sul disegno

● Esistono classi molto utili già pronte!

21/10/2016 Daniele Barattieri14

Take one, make two!

● E per fare un’altra faccina?

● Immaginiamo però di voler inserire 100 faccine…

21/10/2016 Daniele Barattieri15

UH-ARRAY!

● Servono da “sacchetti” per tanti oggetti, messi in “linea”

21/10/2016 Daniele Barattieri16

...e ancora, come li uso?? =.=

21/10/2016 Daniele Barattieri17

Gli array sono delicati! Listiamoli!

● L’utilizzo degli array è molto performante ma difficile e delicato

● Esistono altri sistemi per ottenere simili effetti…

21/10/2016 Daniele Barattieri18

ArrayList – alcuni metodi

● Get(i) ● Add(i)● IndexOf(Object)● Remove(i)● Clear()● Size()● Set(i, object)

21/10/2016 Daniele Barattieri19

PROGETTO

...volevamo ottenere un effetto simile a questo giusto?

21/10/2016 Daniele Barattieri20

PRESTATEMI ORECCHIO!

21/10/2016 Daniele Barattieri21

Immagine… puoi!

● Classe “PImage” messa a disposizione da Processing per gestire le immagini, dalla dimensione sino ai singoli pixel!

● Si carica con “loadImage(path)”

● Si disegna con “image(oggetto_img)”

21/10/2016 Daniele Barattieri22

Image

● I file devono stare nella cartella “data”

● Se si vogliono leggere i pixel, usare prima “loadPixel()”

● Attenzione ai formati!

21/10/2016 Daniele Barattieri23

...e alle dimensioni!

● Se modifichiamo dei pixel, ricordiamoci di “updatePixel()”!

21/10/2016 Daniele Barattieri24

D-D-D

● Basta aggiungere “P3D” come terzo argomento della funzione size()

● Attenzione che non basta aggiungere una terza coordinata alle fuzioni!

● Fare largo usdo di “translate()”!!!

21/10/2016 Daniele Barattieri25

Librerie

https://processing.org/reference/libraries/

21/10/2016 Daniele Barattieri26

Domande?

21/10/2016 Daniele Barattieri27

Grazie

● Contatti– Mail: danielebarattieri@gmail.com– µHack: info@muhack.org