Carlo Amaturo, nato a Salerno il 16/09/1985.
Dopo aver studiato due anni all’università di Salerno presso la facoltà di Ingegneria Elettronica, è attualmente iscritto al 5° anno alla facoltà di Architettura L.Quaroni della Sapienza di Roma.
If this browser does not have the latest Java Plug-in then get it here.
[DDET Visuallizza codice sorgente per Processing]
PImage extrude;
int[][] values;
float angle = 0;
void setup() {
//Carica immagine
extrude = loadImage("http://carloamaturo.altervista.org/wp-content/uploads/2012/04/a3.jpg");
extrude.loadPixels();
//Definisce dimensione finestra
size(270 ,360, P3D);
//Crea nuova matrice con le dimensioni immagini
values = new int[extrude.width][extrude.height];
//Ciclo For: Per ogni pixel carica colore nella matrice
for (int y = 0; y < extrude.height; y++) {
for (int x = 0; x < extrude.width; x++) {
color pixel = extrude.get(x, y);
values[x][y] = int(color(pixel));
}
}
}
void draw() {
background(255);
//Scala immagine finale
scale(0.5);
//Angolo di rotazione dal centro dell'immagine
float angle = (((float) mouseX/(width/2) )-1);
//Traslazione immagine
translate(width, 0, -300);
//Rotazione attorno all'asse verticale
rotateY(angle);
//Traslazione centro di rotazione
translate(-extrude.width/2, 0, 0);
// Mostra la nuvola di punti
// Per ogni punto lo spessore è dato dalla matrice colore
// Z dipende dal colore e dalla posizione verticale del mouse
for (int y = 0; y < extrude.height; y++) {
for (int x = 0; x < extrude.width; x++) {
stroke(values[x][y]);
point(x, y,(mouseY+80)*0.005*-values[x][y]*0.00001);
}
}
}
[/DDET]