Campo di spot

Mouse: posizione degli spot Applicazione Java final int numero=10; float lato, lato2, width2; float x_m, y_m; float x_pos[], y_pos[]; void setup() { size(500, 500); frameRate(30); rectMode(CENTER); smooth(); noStroke(); lato=width/numero; lato2=lato/2.0; width2=2.0*width; x_pos=new float[numero]; y_pos=new float[numero]; for(int i=0; i<numero; i++) { x_pos[i]=i*lato+lato2; y_pos[i]=i*lato+lato2; } noLoop(); } void mouseMoved() { redraw(); } void draw() { background(255); fill(0,100,100); … Leggi tutto

Campo magnetico

Mouse (posizione): direzione del campo magnetico Mouse (tasto): attrazione/repulsione Applicazione Java final int numero=10; float lato, lato_2; float x_pos[]; float y_pos[]; boolean tasto; void setup() { size(500, 500); frameRate(30); smooth(); stroke(0); fill(0,255,255); strokeWeight(2); lato=(float)width/(numero+1); lato_2=lato/2.0; x_pos=new float[numero]; y_pos=new float[numero]; for(int i=1; i <= numero; i++) { x_pos[i-1]=i*lato; y_pos[i-1]=i*lato; } noLoop(); } void mouseMoved() { tasto=true; … Leggi tutto

Animazione 6

La stessa animazione viene visualizzata 6 volte con sovrapposizioni e ridimensionamenti Applicazione Java final int numFrame = 12; final int numAnima = 6; PImage immagini[]; Animazione animazioni[]; void setup() { size(500, 500); smooth(); frameRate(numFrame); immagini=new PImage[numFrame]; for(int i=0; i < numFrame; i++) immagini[i]=loadImage(“a”+i+”.gif”); int dim=immagini[0].width; int x1=(width-2*dim)/3; int y1=(height-2*dim)/3; animazioni=new Animazione[numAnima]; for(int i=0; i < … Leggi tutto

Animazione 4

La stessa animazione viene visualizzata 4 volte ma con i fotogrammi sfasati (0, 3, 6, 9). Applicazione Java final int numFrame = 12; final int numAnima = 4; int dim; PImage immagini[]; Animazione animazioni[]; void setup() { size(500, 500); frameRate(numFrame); immagini=new PImage[numFrame]; for(int i=0; i < numFrame; i++) immagini[i]=loadImage(“a”+i+”.gif”); dim=200; int x1=(width-2*dim)/3; int y1=(height-2*dim)/3; animazioni … Leggi tutto

Animazione 2 – Collegate

La stessa animazione viene utilizzata due volte con dimensioni variabili Mouse: posizione dei vertici delle animazioni Applicazione Java final int numFrame = 12; int frame = 0; int x, y; PImage immagini[]; void setup() { size(500, 500); smooth(); frameRate(numFrame); immagini = new PImage[numFrame]; for(int i=0; i < numFrame; i++) immagini[i] = loadImage(“a”+i+”.gif”); } void draw() … Leggi tutto

Animazione 2

La stessa animazione viene utilizzata come sfondo e come puntatore del mouse Mouse: posizione dell’animazione Applicazione Java final int numFrame = 12; int frame = 0; int dim, dim2; PImage immagini[]; void setup() { size(500, 500); smooth(); frameRate(numFrame); immagini=new PImage[numFrame]; for(int i=0; i < numFrame; i++) immagini[i]=loadImage("a"+i+".gif"); dim=immagini[0].width; dim2=dim/2; } void draw() { image(immagini[frame], 0, ... Leggi tutto

Animazione 1

Mouse: posizione dell’animazione Applicazione Java final int numFrame = 12; int frame = 0; int dim, dim2; PImage immagini[]; void setup() { size(500, 500); frameRate(numFrame); immagini = new PImage[numFrame]; for(int i=0; i < numFrame; i++) immagini[i] = loadImage(“a”+i+”.gif”); dim=immagini[0].width; dim2=dim/2; } void draw() { background(255); image(immagini[frame], mouseX-dim2, mouseY-dim2); frame=frame+1; if(frame == numFrame) frame=0; }

Game of Life – Tre colori

Mouse (tasto): ricomincia. Applicazione Java int sx, sy; // dimensioni tabella int sx_u, sy_u; // ultima cella float densita = 0.2; // densità iniziale della popolazione int MONDO[][][]; // la tabella a due livelli, due matrici… int quanti; void setup() { size(500, 350); frameRate(30); sx = width; sy = height; quanti=(int)(sx*sy*densita); MONDO = new int[sx][sy][2]; … Leggi tutto

Game of Life

Mouse (tasto): riparte Applicazione Java int sx, sy; // dimensioni tabella int sx_u, sy_u; // ultima cella float densita = 0.2; // densità iniziale della popolazione int MONDO[][][]; // la tabella a due livelli, due matrici… int quanti; void setup() { size(500, 350); frameRate(30); stroke(255); sx = width; sy = height; quanti=(int)(sx*sy*densita); MONDO = new … Leggi tutto

Sabbia nella boccia

La fascia grigia si comporta come una parete permeabile Mouse: attiva finestra grafica Tastiera (LEFT, RIGHT, UP, DOWN); ruota/ribalta la boccia Applicazione Java float gravita, vento; color fondo, spazio, sabbia, filtro; int num; color[][] tab; void setup() { size(500, 500); frameRate(30); tab=new color[width][height]; int w=width, h=height, w2=w/2, h2=h/2, d=w/50; num=w*h/3; gravita=h/15; vento=w/50; fondo=color(255, 255, 255); … Leggi tutto