//MENU PLAY
int rectX, rectY;
int rectSize = 50;
boolean rectOver1 = false;
boolean rectOver2 = false;
boolean rectOver3 = false;
boolean rectOver4 = false;
boolean rectOver5 = false;
boolean rectOver6 = false;
boolean GameStart = true;
PFont font;
float g0=2000;//Start
//SONG
import processing.sound.*;
SoundFile file;
//ARDUINO
import processing.serial.*; //importing serial lib
Serial arduino;
int serialIn;
//VARIABILI ATTIVAZIONE
float g1=0;//Good Form
float g2=0;//Closure
float g3=0;//Good Form
float g4=0;//Good Form
float g5=0;//Good Form
float g6=0;//Good Form
//VARIABILI TESTO
float shp=0;
//VARIABILI GOOD FORM-----------------------
float val=0;
float x1=0;
float sato=0;
//VARIABILI CLOSURE-----------------------
int valclos=0;
int vale1=0;
int vale2=0;
int valr1=0;
int valr2=0;
int valr3=0;
float sat=0;
//VARIABILI COMMON REGION-----------------------
float scr=0;
float scr2=0;
//VARIABILI CONTINUITY-------------------------------
float rape=0;
float angle = 0;
//VARIABILI PROXIMITY------------------------------------
float p1=0;
float p2=0;
float p3=0;
float p4=0;
float p5=0;
float p6=0;
float p7=0;
//VARIABILI SIMILARITY------------------------------------
int sim=0;
float satsim=0;
//|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
void setup() {
//fullScreen();
size(1920, 1080);
//Arduino---------------------
printArray(Serial.list());
arduino = new Serial(this, "COM3", 115200);
//SONG----------
file = new SoundFile(this, "sky.mp3");
file.loop();
//Menu PLAY-----------------------------------
rectX = 602;
rectY = 932;
font = loadFont("FutT.vlw");
textFont(font);
ellipseMode(CENTER);
rectMode(CORNER);
}
//||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
void draw() {
background(0);
strokeWeight(3);
//PULSANTI ----------------------------------------------------
//Start
pushMatrix();
translate(2000-g0,0);
fill(190);
textSize(150);
text("GESTALTOY",548,470);
popMatrix();
//P1-------------------------------------------
if (rectOver1) {
fill(255);
} else {
fill(20);
}
stroke(100);
rect(rectX, rectY, rectSize, rectSize);
//P2-------------------------------------------------
if (rectOver2) {
fill(255);
} else {
fill(20);
}
stroke(100);
rect(rectX+133, rectY, rectSize, rectSize);
//P3-----------------------------------------
if (rectOver3) {
fill(255);
} else {
fill(20);
}
stroke(100);
rect(rectX+266, rectY, rectSize, rectSize);
//P4------------------------------------------
if (rectOver4) {
fill(255);
} else {
fill(20);
}
stroke(100);
rect(rectX+399, rectY, rectSize, rectSize);
//P5---------------------------------------
if (rectOver5) {
fill(255);
} else {
fill(20);
}
stroke(100);
rect(rectX+532, rectY, rectSize, rectSize);
//P6-----------------------------------
if (rectOver6) {
fill(255);
} else {
fill(20);
}
stroke(100);
rect(rectX+665, rectY, rectSize, rectSize);
//ARDUINO VARIABLE---------------------------------------------
if (arduino.available()>0)
{
serialIn=arduino.read();
println(serialIn);
}
// Text-----------------------------------------
shp=map(serialIn,0,50,190,0);
if (serialIn>10||serialIn<=0){ shp=0;};
//Good Form---------------------------------------
val=int(map(serialIn, 0, 50, 40, 20)); //mappa dell'imput
x1=int(map(serialIn, 0, 50, 120, 0)); //mappa dell'imput
sato=map(serialIn, 0, 50, 255, 0); //mappa dell'imput
if (serialIn<=0)
{ x1=0;
val=20;
};
if (serialIn>10 || serialIn<=0) {
sato=0;
}
if (x1>108 ) {
x1=107;
}
//Closure---------------------------------------
valclos=int(map(serialIn, 0, 50, 40, 20)); //mappa dell'imput
vale1=int(map(serialIn, 0, 50, 350, 0)); //mappa dell'imput
vale2=int(map(serialIn, 0, 50, 226, 0)); //mappa dell'imput
valr1=int(map(serialIn, 0, 50, 226, 0)); //mappa dell'imput
valr2=int(map(serialIn, 0, 50, 324, 0)); //mappa dell'imput
valr3=int(map(serialIn, 0, 50, 452, 0));
sat=map(serialIn, 0, 50, 0, 255); //mappa dell'imput
sato=map(serialIn, 0, 50, 255, 0); //mappa dell'imput
if (serialIn<=0)
{
valclos=20; vale1=0; valr1=0; vale2=0; valr2=0;
valr3=0; sat=255;
};
if (serialIn>20||serialIn<=0){
sato=0;};
//Common Region---------------------------------------
scr=map(serialIn, 0, 50, 20, 0); //mappa dell'imput
scr2=map(serialIn, 0, 50, 255, 0); //mappa dell'imput
if (serialIn<=0)
{ scr=0;
scr2=0;
};
//Continuity---------------------------------------
rape=int(map(serialIn, 0, 50, 400, 0)); //mappa dell'imput
if (serialIn<=0)
{
rape=0;
};
float d1 = 200+ (sin(angle) * rape/2) ;
float d1y = 200+ (sin(angle) * -rape/2) ;
float d2 = 313+ (sin(angle) * rape/2)+2;
float d2y = 313+ (sin(angle) * -rape/2)+2;
float d3 = 426+ (sin(angle) * rape/2);
float d3y = 426+ (sin(angle) * -rape/2);
float d4 = 539+ (sin(angle) * rape/2);
float d4y = 539+ (sin(angle) * -rape/2);
float d5 = 652+ (sin(angle) * rape/2);
float d5y = 652+ (sin(angle) * -rape/2);
float d6 = 767+ (sin(angle) * rape/2);
float d6y = 767+ (sin(angle) * -rape/2);
float d7 = 878+ (sin(angle) * rape/2);
float d7y = 878 +(sin(angle) * -rape/2);
//Proximity-------------------------------------------------------------
p1=int(map(serialIn, 0, 50, 51, 0)); //mappa dell'imput
p2=int(map(serialIn, 0, 50, 101, 0)); //mappa dell'imput
p3=int(map(serialIn, 0, 50, 152, 0)); //mappa dell'imput
p4=int(map(serialIn, 0, 50, 202, 0)); //mappa dell'imput
p5=int(map(serialIn, 0, 50, 253, 0)); //mappa dell'imput
p6=int(map(serialIn, 0, 50, 303, 0)); //mappa dell'imput
p7=int(map(serialIn, 0, 50, 353, 0)); //mappa dell'imput
if (serialIn<=0)
{
p1=0;
p2=0;
p3=0;
p4=0;
p5=0;
p6=0;
p7=0;
};
//Similarity-----------------------------------------------
sim=int(map(serialIn, 0, 50, 70, 20)); //mappa dell'imput
satsim=map(serialIn, 0, 50, 0, 255); //mappa dell'imput
if (serialIn<=0)
{
sim=20;
satsim=255;
};
//BOOLEANE|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
//P1---------------------
if (mouseX >= rectX && mouseX <= rectSize+rectX &&
mouseY >= rectY && mouseY <= rectSize+rectY)
{
GameStart=false;
rectOver1 = true;
rectOver2 = false;
rectOver3 = false;
rectOver4 = false;
rectOver5 = false;
rectOver6 = false;
}
else {
rectOver1 = false;
}
//P2---------------------
if ( mouseX >= rectX+133 && mouseX <= rectSize+rectX+133 &&
mouseY >= rectY && mouseY <= rectSize+rectY ) {
GameStart=false;
rectOver1 = false;
rectOver2 = true;
rectOver4 = false;
rectOver5 = false;
rectOver6 = false;
} else {
rectOver2 = false;
}
//P3---------------------
if ( mouseX >= rectX+266 && mouseX <= rectSize+rectX+266 &&
mouseY >= rectY && mouseY <= rectSize+rectY ) {
GameStart=false;
rectOver1 = false;
rectOver2 = false;
rectOver3 = true;
rectOver4 = false;
rectOver5 = false;
rectOver6 = false;
} else {
rectOver3 = false;
}
//P4---------------------
if ( mouseX >= rectX+399 && mouseX <= rectSize+rectX+399 &&
mouseY >= rectY && mouseY <= rectSize+rectY ) {
GameStart=false;
rectOver1 = false;
rectOver2 = false;
rectOver3 = false;
rectOver4 = true;
rectOver5 = false;
rectOver6 = false;
} else {
rectOver4 = false;
}
//P5---------------------
if ( mouseX >= rectX+532 && mouseX <= rectSize+rectX+532 &&
mouseY >= rectY && mouseY <= rectSize+rectY ) {
GameStart=false;
rectOver1 = false;
rectOver2 = false;
rectOver3 = false;
rectOver4 = false;
rectOver5 = true;
rectOver6 = false;
} else {
rectOver5 = false;
}
//P6---------------------
if ( mouseX >= rectX+665 && mouseX <= rectSize+rectX+665 &&
mouseY >= rectY && mouseY <= rectSize+rectY ) {
GameStart=false;
rectOver1 = false;
rectOver2 = false;
rectOver3 = false;
rectOver4 = false;
rectOver5 = false;
rectOver6 = true;
} else {
rectOver6 = false;
}
//TESTO //--------------------------------------------------------
//Good Form--------------------------------
pushMatrix();
translate(2000-g1,0);
fill(shp);
textSize(50);
text("GOOD FORM",518,170);
popMatrix();
//Similarity--------------------------------
pushMatrix();
translate(2000-g6,0);
fill(shp);
textSize(50);
text("SIMILARITY",1550,90);
popMatrix();
//Porximity--------------------------------
pushMatrix();
translate(2000-g5,0);
fill(shp);
textSize(50);
text("PROXIMITY",830,510);
popMatrix();
//Closure--------------------------------GUARDA SOTTO!!!!
// pushMatrix();
// translate(2000-g2,0);
// fill(shp);
// textSize(50);
// text("CLOSURE",500,400);
// popMatrix();
//Continuity--------------------------------
pushMatrix();
translate(2000-g4,0);
fill(shp);
textSize(50);
text("CONTINUITY",1288,700);
popMatrix();
//Common Region--------------------------------
pushMatrix();
translate(2000-g3,0);
fill(shp);
textSize(50);
text("COMMON REGION",100,940);
popMatrix();
//GRUPPO GOOD FORM______________________________________________________________________________
pushMatrix();
translate(2000-g1,-50);
fill(255);
noStroke();
//line
ellipse(150+x1*7, 200, 20, 20); ellipse(258+x1*6, 200, 20, 20); ellipse(366+x1*5, 200, 20, 20); ellipse(474+x1*4, 200, 20, 20);
ellipse(582+x1*3, 200, 20, 20); ellipse(690+x1*2, 200, 20, 20); ellipse(798+x1, 200, 20, 20); ellipse(906, 200, val, val);
//line 2
ellipse(150+x1*6, 313, 20, 20); ellipse(258+x1*5, 313, 20, 20); ellipse(366+x1*4, 313, 20, 20); ellipse(474+x1*3, 313, 20, 20);
ellipse(582+x1*2, 313, 20, 20); ellipse(690+x1, 313, 20, 20); ellipse(798, 313, val, val); ellipse(906, 313, val, val);
//line 3
ellipse(150+x1*5, 426, 20, 20); ellipse(258+x1*4, 426, 20, 20); ellipse(366+x1*3, 426, 20, 20); ellipse(474+x1*2, 426, 20, 20);
ellipse(582+x1, 426, 20, 20); ellipse(690, 426, val, val); ellipse(798, 426, val, val); ellipse(906, 426, val, val);
//line 4
ellipse(150+x1*4, 539, 20, 20); ellipse(258+x1*3, 539, 20, 20); ellipse(366+x1*2, 539, 20, 20); ellipse(474+x1, 539, 20, 20);
ellipse(582, 539, val, val); ellipse(690, 539, val, val); ellipse(798, 539, val, val); ellipse(906, 539, val, val);
//line 5
ellipse(150+x1*5, 652, 20, 20); ellipse(258+x1*4, 652, 20, 20); ellipse(366+x1*3, 652, 20, 20); ellipse(474+x1*2, 652, 20, 20);
ellipse(582+x1, 652, 20, 20); ellipse(690, 652, val, val); ellipse(798, 652, val, val); ellipse(906, 652, val, val);
//line 6
ellipse(150+x1*6, 767, 20, 20); ellipse(258+x1*5, 767, 20, 20); ellipse(366+x1*4, 767, 20, 20); ellipse(474+x1*3, 767, 20, 20);
ellipse(582+x1*2, 767, 20, 20); ellipse(690+x1, 767, 20, 20); ellipse(798, 767, val, val); ellipse(906, 767, val, val);
//line 7
ellipse(150+x1*7, 878, 20, 20); ellipse(258+x1*6, 878, 20, 20); ellipse(366+x1*5, 878, 20, 20); ellipse(474+x1*4, 878, 20, 20);
ellipse(582+x1*3, 878, 20, 20); ellipse(690+x1*2, 878, 20, 20); ellipse(798+x1, 878, 20, 20); ellipse(906, 878, val, val);
//line
ellipse(1004, 200, val, val); ellipse(1112-x1, 200, 20, 20); ellipse(1220-x1*2, 200, 20, 20); ellipse(1328-x1*3, 200, 20, 20);
ellipse(1436-x1*4, 200, 20, 20); ellipse(1540-x1*5, 200, 20, 20); ellipse(1652-x1*6, 200, 20, 20); ellipse(1760-x1*7, 200, 20, 20);
//line 2
ellipse(1004, 313, val, val); ellipse(1112, 313, val, val); ellipse(1220-x1, 313, 20, 20); ellipse(1328-x1*2, 313, 20, 20);
ellipse(1436-x1*3, 313, 20, 20); ellipse(1540-x1*4, 313, 20, 20); ellipse(1652-x1*5, 313, 20, 20); ellipse(1760-x1*6, 313, 20, 20);
//line 3
ellipse(1004, 426, val, val); ellipse(1112, 426, val, val); ellipse(1220, 426, val, val); ellipse(1328-x1, 426, 20, 20);
ellipse(1436-x1*2, 426, 20, 20); ellipse(1540-x1*3, 426, 20, 20); ellipse(1652-x1*4, 426, 20, 20); ellipse(1760-x1*5, 426, 20, 20);
//line 4
ellipse(1004, 539, val, val); ellipse(1112, 539, val, val); ellipse(1220, 539, val, val); ellipse(1328, 539, val, val);
ellipse(1436-x1, 539, 20, 20); ellipse(1540-x1*2, 539, 20, 20); ellipse(1652-x1*3, 539, 20, 20); ellipse(1760-x1*4, 539, 20, 20);
//line 5
ellipse(1004, 652, val, val); ellipse(1112, 652, val, val); ellipse(1220, 652, val, val); ellipse(1328-x1, 652, 20, 20);
ellipse(1436-x1*2, 652, 20, 20); ellipse(1540-x1*3, 652, 20, 20); ellipse(1652-x1*4, 652, 20, 20); ellipse(1760-x1*5, 652, 20, 20);
//line 6
ellipse(1004, 767, val, val); ellipse(1112, 767, val, val); ellipse(1220-x1, 767, 20, 20); ellipse(1328-x1*2, 767, 20, 20);
ellipse(1436-x1*3, 767, 20, 20); ellipse(1540-x1*4, 767, 20, 20); ellipse(1652-x1*5, 767, 20, 20); ellipse(1760-x1*6, 767, 20, 20);
//line 7
ellipse(1004, 878, val, val); ellipse(1112-x1, 878, 20, 20); ellipse(1220-x1*2, 878, 20, 20); ellipse(1328-x1*3, 878, 20, 20);
ellipse(1436-x1*4, 878, 20, 20); ellipse(1540-x1*5, 878, 20, 20); ellipse(1652-x1*6, 878, 20, 20); ellipse(1760-x1*7, 878, 20, 20);
popMatrix();
//GRUPPO CLOSURE______________________________________________________________________________
pushMatrix();
translate(2000-g2,-50);
noStroke();
//line
ellipse(150, 200, valclos, valclos); ellipse(258, 200, valclos, valclos); ellipse(366, 200, valclos, valclos); ellipse(474, 200, valclos, valclos);
ellipse(582, 200, valclos, valclos); ellipse(690, 200, valclos, valclos); ellipse(798, 200, valclos, valclos); ellipse(906, 200, valclos, valclos);
//line 2
ellipse(150, 313, valclos, valclos); ellipse(258, 313, valclos, valclos); ellipse(366, 313, valclos, valclos); ellipse(474, 313, valclos, valclos);
ellipse(582, 313, valclos, valclos); ellipse(690, 313, valclos, valclos); ellipse(798, 313, valclos, valclos); ellipse(906, 313, valclos, valclos);
//line 3
ellipse(150, 426, valclos, valclos); ellipse(258, 426, valclos, valclos); ellipse(366, 426, valclos, valclos); ellipse(474, 426, valclos, valclos);
ellipse(582, 426, valclos, valclos); ellipse(690, 426, valclos, valclos); ellipse(798, 426, valclos, valclos); ellipse(906, 426, valclos, valclos);
//line 4
ellipse(150, 539, valclos, valclos); ellipse(258, 539, valclos, valclos); ellipse(366, 539, valclos, valclos); ellipse(474, 539, valclos, valclos);
ellipse(582, 539, valclos, valclos); ellipse(690, 539, valclos, valclos); ellipse(798, 539, valclos, valclos); ellipse(906, 539, valclos, valclos);
//line 5
ellipse(150, 652, valclos, valclos); ellipse(258, 652, valclos, valclos); ellipse(366, 652, valclos, valclos); ellipse(474, 652, valclos, valclos);
ellipse(582, 652, valclos, valclos); ellipse(690, 652, valclos, valclos); ellipse(798, 652, valclos, valclos); ellipse(906, 652, valclos, valclos);
//line 6
ellipse(150, 767, valclos, valclos); ellipse(258, 767, valclos, valclos); ellipse(366, 767, valclos, valclos); ellipse(474, 767, valclos, valclos);
ellipse(582, 767, valclos, valclos); ellipse(690, 767, valclos, valclos); ellipse(798, 767, valclos, valclos); ellipse(906, 767, valclos, valclos);
//line 7
ellipse(150, 878, valclos, valclos); ellipse(258, 878, valclos, valclos); ellipse(366, 878, valclos, valclos); ellipse(474, 878, valclos, valclos);
ellipse(582, 878, valclos, valclos); ellipse(690, 878, valclos, valclos); ellipse(798, 878, valclos, valclos); ellipse(906, 878, valclos, valclos);
//line
ellipse(1004, 200, valclos, valclos); ellipse(1112, 200, valclos, valclos); ellipse(1220, 200, valclos, valclos); ellipse(1328, 200, valclos, valclos);
ellipse(1436, 200, valclos, valclos); ellipse(1540, 200, valclos, valclos); ellipse(1652, 200, valclos, valclos); ellipse(1760, 200, valclos, valclos);
//line 2
ellipse(1004, 313, valclos, valclos); ellipse(1112, 313, valclos, valclos); ellipse(1220, 313, valclos, valclos); ellipse(1328, 313, valclos, valclos);
ellipse(1436, 313, valclos, valclos); ellipse(1540, 313, valclos, valclos); ellipse(1652, 313, valclos, valclos); ellipse(1760, 313, valclos, valclos);
//line 3
ellipse(1004, 426, valclos, valclos); ellipse(1112, 426, valclos, valclos); ellipse(1220, 426, valclos, valclos); ellipse(1328, 426, valclos, valclos);
ellipse(1436, 426, valclos, valclos); ellipse(1540, 426, valclos, valclos); ellipse(1652, 426, valclos, valclos); ellipse(1760, 426, valclos, valclos);
//line 4
ellipse(1004, 539, valclos, valclos); ellipse(1112, 539, valclos, valclos); ellipse(1220, 539, valclos, valclos); ellipse(1328, 539, valclos, valclos);
ellipse(1436, 539, valclos, valclos); ellipse(1540, 539, valclos, valclos); ellipse(1652, 539, valclos, valclos); ellipse(1760, 539, valclos, valclos);
//line 5
ellipse(1004, 652, valclos, valclos); ellipse(1112, 652, valclos, valclos); ellipse(1220, 652, valclos, valclos); ellipse(1328, 652, valclos, valclos);
ellipse(1436, 652, valclos, valclos); ellipse(1540, 652, valclos, valclos); ellipse(1652, 652, valclos, valclos); ellipse(1760, 652, valclos, valclos);
//line 6
ellipse(1004, 767, valclos, valclos); ellipse(1112, 767, valclos, valclos); ellipse(1220, 767, valclos, valclos); ellipse(1328, 767, valclos, valclos);
ellipse(1436, 767, valclos, valclos); ellipse(1540, 767, valclos, valclos); ellipse(1652, 767, valclos, valclos); ellipse(1760, 767, valclos, valclos);
//line 7
ellipse(1004, 878, valclos, valclos); ellipse(1112, 878, valclos, valclos); ellipse(1220, 878, valclos, valclos); ellipse(1328, 878, valclos, valclos);
ellipse(1436, 878, valclos, valclos); ellipse(1540, 878, valclos, valclos); ellipse(1652, 878, valclos, valclos); ellipse(1760, 878, valclos, valclos);
//BLACK SHAPE
rectMode(CENTER);
fill(0);
noStroke();
ellipse(528,369,vale1,vale1);
ellipse(1652,652,vale2,vale2);
rect(366,767,valr1,valr1);
rect(690,767,valr1,valr1);
rect(1284,539,valr2,valr3);
popMatrix();
rectMode(CORNER);
//Closure--------------------------------
pushMatrix();
translate(2000-g2,0);
fill(shp);
textSize(50);
text("CLOSURE",420,340);
popMatrix();
//GRUPPO COMMON REGION______________________________________________________________________________
pushMatrix();
translate(2000-g3,-50);
noStroke();
fill(255);
//line
ellipse(150, 200, 20, 20); ellipse(258, 200, 20, 20); ellipse(366, 200, 20, 20); ellipse(474, 200, 20, 20);
ellipse(582, 200, 20, 20); ellipse(690, 200, 20, 20); ellipse(798, 200, 20, 20); ellipse(906, 200, 20, 20);
//line 2
ellipse(150, 313, 20, 20); ellipse(258, 313, 20, 20); ellipse(366, 313, 20, 20); ellipse(474, 313, 20, 20);
ellipse(582, 313, 20, 20); ellipse(690, 313, 20, 20); ellipse(798, 313, 20, 20); ellipse(906, 313, 20, 20);
//line 3
ellipse(150, 426, 20, 20); ellipse(258, 426, 20, 20); ellipse(366, 426, 20, 20); ellipse(474, 426, 20, 20);
ellipse(582, 426, 20, 20); ellipse(690, 426, 20, 20); ellipse(798, 426, 20, 20); ellipse(906, 426, 20, 20);
//line 4
ellipse(150, 539, 20, 20); ellipse(258, 539, 20, 20); ellipse(366, 539, 20, 20); ellipse(474, 539, 20, 20);
ellipse(582, 539, 20, 20); ellipse(690, 539, 20, 20); ellipse(798, 539, 20, 20); ellipse(906, 539, 20, 20);
//line 5
ellipse(150, 652, 20, 20); ellipse(258, 652, 20, 20); ellipse(366, 652, 20, 20); ellipse(474, 652, 20, 20);
ellipse(582, 652, 20, 20); ellipse(690, 652, 20, 20); ellipse(798, 652, 20, 20); ellipse(906, 652, 20, 20);
//line 6
ellipse(150, 767, 20, 20); ellipse(258, 767, 20, 20); ellipse(366, 767, 20, 20); ellipse(474, 767, 20, 20);
ellipse(582, 767, 20, 20); ellipse(690, 767, 20, 20); ellipse(798, 767, 20, 20); ellipse(906, 767, 20, 20);
//line 7
ellipse(150, 878, 20, 20); ellipse(258, 878, 20, 20); ellipse(366, 878, 20, 20); ellipse(474, 878, 20, 20);
ellipse(582, 878, 20, 20); ellipse(690, 878, 20, 20); ellipse(798, 878, 20, 20); ellipse(906, 878, 20, 20);
//GRUPPO CHANGE
//line
ellipse(1004, 200, 20, 20); ellipse(1112, 200, 20, 20); ellipse(1220, 200, 20, 20); ellipse(1328, 200, 20, 20);
ellipse(1436, 200, 20, 20); ellipse(1540, 200, 20, 20); ellipse(1652, 200, 20, 20); ellipse(1760, 200, 20, 20);
//line 2
ellipse(1004, 313, 20, 20); ellipse(1112, 313, 20, 20); ellipse(1220, 313, 20, 20); ellipse(1328, 313, 20, 20);
ellipse(1436, 313, 20, 20); ellipse(1540, 313, 20, 20); ellipse(1652, 313, 20, 20); ellipse(1760, 313, 20, 20);
//line 3
ellipse(1004, 426, 20, 20); ellipse(1112, 426, 20, 20); ellipse(1220, 426, 20, 20); ellipse(1328, 426, 20, 20);
ellipse(1436, 426, 20, 20); ellipse(1540, 426, 20, 20); ellipse(1652, 426, 20, 20); ellipse(1760, 426, 20, 20);
//line 4
ellipse(1004, 539, 20, 20); ellipse(1112, 539, 20, 20); ellipse(1220, 539, 20, 20); ellipse(1328, 539, 20, 20);
ellipse(1436, 539, 20, 20); ellipse(1540, 539, 20, 20); ellipse(1652, 539, 20, 20); ellipse(1760, 539, 20, 20);
//line 5
ellipse(1004, 652, 20, 20); ellipse(1112, 652, 20, 20); ellipse(1220, 652, 20, 20); ellipse(1328, 652, 20, 20);
ellipse(1436, 652, 20, 20); ellipse(1540, 652, 20, 20); ellipse(1652, 652, 20, 20); ellipse(1760, 652, 20, 20);
//line 6
ellipse(1004, 767, 20, 20); ellipse(1112, 767, 20, 20); ellipse(1220, 767, 20, 20); ellipse(1328, 767, 20, 20);
ellipse(1436, 767, 20, 20); ellipse(1540, 767, 20, 20); ellipse(1652, 767, 20, 20); ellipse(1760, 767, 20, 20);
//line 7
ellipse(1004, 878, 20, 20); ellipse(1112, 878, 20, 20); ellipse(1220, 878, 20, 20); ellipse(1328, 878, 20, 20);
ellipse(1436, 878, 20, 20); ellipse(1540, 878, 20, 20); ellipse(1652, 878, 20, 20); ellipse(1760, 878, 20, 20);
//BLACK SHAPE
stroke(scr2);
strokeWeight(scr);
noFill();
rectMode(CENTER);
rect(474,426,737,539); rect(474,426+395,737,196);
rect(1328+5,649-395,924,196); rect(1328+5,650,924,539);
popMatrix();
rectMode(CORNER);
//GRUPPO CONTINUITY______________________________________________________________________________
pushMatrix();
fill(255);
noStroke();
translate(2000-g4,-50);
angle += 0.02;
//line
ellipse(150, d1, 20, 20); ellipse(258, d1y, 20, 20); ellipse(366, d1, 20, 20); ellipse(474, d1y, 20, 20);
ellipse(582, d1, 20, 20); ellipse(690, d1y, 20, 20); ellipse(798, d1, 20, 20); ellipse(906, d1y, 20, 20);
//line 2
ellipse(150, d2, 20, 20); ellipse(258, d2y, 20, 20); ellipse(366, d2, 20, 20); ellipse(474, d2y, 20, 20);
ellipse(582, d2, 20, 20); ellipse(690, d2y, 20, 20); ellipse(798, d2, 20, 20); ellipse(906, d2y, 20, 20);
//line 3
ellipse(150, d3, 20, 20); ellipse(258, d3y, 20, 20); ellipse(366, d3, 20, 20); ellipse(474, d3y, 20, 20);
ellipse(582, d3, 20, 20); ellipse(690, d3y, 20, 20); ellipse(798, d3, 20, 20); ellipse(906, d3y, 20, 20);
//line 4
ellipse(150, d4, 20, 20); ellipse(258, d4y, 20, 20); ellipse(366, d4, 20, 20); ellipse(474, d4y, 20, 20);
ellipse(582, d4, 20, 20); ellipse(690, d4y, 20, 20); ellipse(798, d4, 20, 20); ellipse(906, d4y, 20, 20);
//line 5
ellipse(150, d5, 20, 20); ellipse(258, d5y, 20, 20); ellipse(366, d5, 20, 20); ellipse(474, d5y, 20, 20);
ellipse(582, d5, 20, 20); ellipse(690, d5y, 20, 20); ellipse(798, d5, 20, 20); ellipse(906, d5y, 20, 20);
//line 6
ellipse(150, d6, 20, 20); ellipse(258, d6y, 20, 20); ellipse(366, d6, 20, 20); ellipse(474, d6y, 20, 20);
ellipse(582, d6, 20, 20); ellipse(690, d6y, 20, 20); ellipse(798, d6, 20, 20); ellipse(906, d6y, 20, 20);
//line 7
ellipse(150, d7, 20, 20); ellipse(258, d7y, 20, 20); ellipse(366, d7, 20, 20); ellipse(474, d7y, 20, 20);
ellipse(582, d7, 20, 20); ellipse(690, d7y, 20, 20); ellipse(798, d7, 20, 20); ellipse(906, d7y, 20, 20);
//line
ellipse(1004, d1, 20, 20); ellipse(1112, d1y, 20, 20); ellipse(1220, d1, 20, 20); ellipse(1328, d1y, 20, 20);
ellipse(1436, d1, 20, 20); ellipse(1540, d1y, 20, 20); ellipse(1652, d1, 20, 20); ellipse(1760, d1y, 20, 20);
//line 2
ellipse(1004, d2, 20, 20); ellipse(1112, d2y, 20, 20); ellipse(1220, d2, 20, 20); ellipse(1328, d2y, 20, 20);
ellipse(1436, d2, 20, 20); ellipse(1540, d2y, 20, 20); ellipse(1652, d2, 20, 20); ellipse(1760, d2y, 20, 20);
//line 3
ellipse(1004, d3, 20, 20); ellipse(1112, d3y, 20, 20); ellipse(1220, d3, 20, 20); ellipse(1328, d3y, 20, 20);
ellipse(1436, d3, 20, 20); ellipse(1540, d3y, 20, 20); ellipse(1652, d3, 20, 20); ellipse(1760, d3y, 20, 20);
//line 4
ellipse(1004, d4, 20, 20); ellipse(1112, d4y, 20, 20); ellipse(1220, d4, 20, 20); ellipse(1328, d4y, 20, 20);
ellipse(1436, d4, 20, 20); ellipse(1540, d4y, 20, 20); ellipse(1652, d4, 20, 20); ellipse(1760, d4y, 20, 20);
//line 5
ellipse(1004, d5, 20, 20); ellipse(1112, d5y, 20, 20); ellipse(1220, d5, 20, 20); ellipse(1328, d5y, 20, 20);
ellipse(1436, d5, 20, 20); ellipse(1540, d5y, 20, 20); ellipse(1652, d5, 20, 20); ellipse(1760, d5y, 20, 20);
//line 6
ellipse(1004, d6, 20, 20); ellipse(1112, d6y, 20, 20); ellipse(1220, d6, 20, 20); ellipse(1328, d6y, 20, 20);
ellipse(1436, d6, 20, 20); ellipse(1540, d6y, 20, 20); ellipse(1652, d6, 20, 20); ellipse(1760, d6y, 20, 20);
//line 7
ellipse(1004, d7, 20, 20); ellipse(1112, d7y, 20, 20); ellipse(1220, d7, 20, 20); ellipse(1328, d7y, 20, 20);
ellipse(1436, d7, 20, 20); ellipse(1540, d7y, 20, 20); ellipse(1652, d7, 20, 20); ellipse(1760, d7y, 20, 20);
popMatrix();
// GRUPPO PROXIMITY----------------------------------------------------------------
pushMatrix();
translate(2000-g5,-50);
noStroke();
ellipseMode(CENTER) ;
fill(255);
//line
ellipse(150, 200, 20, 20); ellipse(258-p1, 200, 20, 20); ellipse(366-p2, 200, 20, 20); ellipse(474-p3, 200, 20, 20);
ellipse(582-p4, 200, 20, 20); ellipse(690-p5, 200, 20, 20); ellipse(798-p6, 200, 20, 20); ellipse(906-p7, 200, 20, 20);
//line 2
ellipse(150, 313, 20, 20); ellipse(258-p1, 313, 20, 20); ellipse(366-p2, 313, 20, 20); ellipse(474-p3, 313, 20, 20);
ellipse(582-p4, 313, 20, 20); ellipse(690-p5, 313, 20, 20); ellipse(798-p6, 313, 20, 20); ellipse(906-p7, 313, 20, 20);
//line 3
ellipse(150, 426, 20, 20); ellipse(258-p1, 426, 20, 20); ellipse(366-p2, 426, 20, 20); ellipse(474-p3, 426, 20, 20);
ellipse(582-p4, 426, 20, 20); ellipse(690-p5, 426, 20, 20); ellipse(798-p6, 426, 20, 20); ellipse(906-p7, 426, 20, 20);
//line 4
ellipse(150, 539, 20, 20); ellipse(258-p1, 539, 20, 20); ellipse(366-p2, 539, 20, 20); ellipse(474-p3, 539, 20, 20);
ellipse(582-p4, 539, 20, 20); ellipse(690-p5, 539, 20, 20); ellipse(798-p6, 539, 20, 20); ellipse(906-p7, 539, 20, 20);
//line 5
ellipse(150, 652, 20, 20); ellipse(258-p1, 652, 20, 20); ellipse(366-p2, 652, 20, 20); ellipse(474-p3, 652, 20, 20);
ellipse(582-p4, 652, 20, 20); ellipse(690-p5, 652, 20, 20); ellipse(798-p6, 652, 20, 20); ellipse(906-p7, 652, 20, 20);
//line 6
ellipse(150, 767, 20, 20); ellipse(258-p1, 767, 20, 20); ellipse(366-p2, 767, 20, 20); ellipse(474-p3, 767, 20, 20);
ellipse(582-p4, 767, 20, 20); ellipse(690-p5, 767, 20, 20); ellipse(798-p6, 767, 20, 20); ellipse(906-p7, 767, 20, 20);
//line 7
ellipse(150, 878, 20, 20); ellipse(258-p1, 878, 20, 20); ellipse(366-p2, 878, 20, 20); ellipse(474-p3, 878, 20, 20);
ellipse(582-p4, 878, 20, 20); ellipse(690-p5, 878, 20, 20); ellipse(798-p6, 878, 20, 20); ellipse(906-p7, 878, 20, 20);
//line
ellipse(1004+p7, 200, 20, 20); ellipse(1112+p6, 200, 20, 20); ellipse(1220+p5, 200, 20, 20); ellipse(1328+p4, 200, 20, 20);
ellipse(1436+p3, 200, 20, 20); ellipse(1540+p2, 200, 20, 20); ellipse(1652+p1, 200, 20, 20); ellipse(1760, 200, 20, 20);
//line 2
ellipse(1004+p7, 313, 20, 20); ellipse(1112+p6, 313, 20, 20); ellipse(1220+p5, 313, 20, 20); ellipse(1328+p4, 313, 20, 20);
ellipse(1436+p3, 313, 20, 20); ellipse(1540+p2, 313, 20, 20); ellipse(1652+p1, 313, 20, 20); ellipse(1760, 313, 20, 20);
//line 3
ellipse(1004+p7, 426, 20, 20); ellipse(1112+p6, 426, 20, 20); ellipse(1220+p5, 426, 20, 20); ellipse(1328+p4, 426, 20, 20);
ellipse(1436+p3, 426, 20, 20); ellipse(1540+p2, 426, 20, 20); ellipse(1652+p1, 426, 20, 20); ellipse(1760, 426, 20, 20);
//line 4
ellipse(1004+p7, 539, 20, 20); ellipse(1112+p6, 539, 20, 20); ellipse(1220+p5, 539, 20, 20); ellipse(1328+p4, 539, 20, 20);
ellipse(1436+p3, 539, 20, 20); ellipse(1540+p2, 539, 20, 20); ellipse(1652+p1, 539, 20, 20); ellipse(1760, 539, 20, 20);
//line 5
ellipse(1004+p7, 652, 20, 20); ellipse(1112+p6, 652, 20, 20); ellipse(1220+p5, 652, 20, 20); ellipse(1328+p4, 652, 20, 20);
ellipse(1436+p3, 652, 20, 20); ellipse(1540+p2, 652, 20, 20); ellipse(1652+p1, 652, 20, 20); ellipse(1760, 652, 20, 20);
//line 6
ellipse(1004+p7, 767, 20, 20); ellipse(1112+p6, 767, 20, 20); ellipse(1220+p5, 767, 20, 20); ellipse(1328+p4, 767, 20, 20);
ellipse(1436+p3, 767, 20, 20); ellipse(1540+p2, 767, 20, 20); ellipse(1652+p1, 767, 20, 20); ellipse(1760, 767, 20, 20);
//line 7
ellipse(1004+p7, 878, 20, 20); ellipse(1112+p6, 878, 20, 20); ellipse(1220+p5, 878, 20, 20); ellipse(1328+p4, 878, 20, 20);
ellipse(1436+p3, 878, 20, 20); ellipse(1540+p2, 878, 20, 20); ellipse(1652+p1, 878, 20, 20); ellipse(1760, 878, 20, 20);
popMatrix();
//GRUPPO SIMILARITY----------------------------------------------------------------
pushMatrix();
translate(2000-g6,-50);
noStroke();
strokeWeight(1);
fill(255);
//line
ellipse(150, 200, sim, sim); ellipse(258, 200, sim, sim); ellipse(366, 200, sim, sim); ellipse(474, 200, sim, sim);
ellipse(582, 200, sim, sim); ellipse(690, 200, sim, sim); ellipse(798, 200, sim, sim); ellipse(906, 200, sim, sim);
//line 2
ellipse(150, 313, sim, sim); ellipse(258, 313, sim, sim); ellipse(366, 313, sim, sim); ellipse(474, 313, sim, sim);
ellipse(582, 313, sim, sim); ellipse(690, 313, sim, sim); ellipse(798, 313, sim, sim); ellipse(906, 313, sim, sim);
//line 3
ellipse(150, 426, sim, sim); ellipse(258, 426, sim, sim); ellipse(366, 426, sim, sim); ellipse(474, 426, sim, sim);
ellipse(582, 426, sim, sim); ellipse(690, 426, sim, sim); ellipse(798, 426, sim, sim); ellipse(906, 426, sim, sim);
//line 4
ellipse(150, 539, sim, sim); ellipse(258, 539, sim, sim); ellipse(366, 539, sim, sim); ellipse(474, 539, sim, sim);
ellipse(582, 539, sim, sim); ellipse(690, 539, sim, sim); ellipse(798, 539, sim, sim); ellipse(906, 539, sim, sim);
//line 5
ellipse(150, 652, sim, sim); ellipse(258, 652, sim, sim); ellipse(366, 652, sim, sim); ellipse(474, 652, sim, sim);
ellipse(582, 652, sim, sim); ellipse(690, 652, sim, sim); ellipse(798, 652, sim, sim); ellipse(906, 652, sim, sim);
//line 6
ellipse(150, 767, sim, sim); ellipse(258, 767, sim, sim); ellipse(366, 767, sim, sim); ellipse(474, 767, sim, sim);
ellipse(582, 767, sim, sim); ellipse(690, 767, sim, sim); ellipse(798, 767, sim, sim); ellipse(906, 767, sim, sim);
//line 7
ellipse(150, 878, sim, sim); ellipse(258, 878, sim, sim); ellipse(366, 878, sim, sim); ellipse(474, 878, sim, sim);
ellipse(582, 878, sim, sim); ellipse(690, 878, sim, sim); ellipse(798, 878, sim, sim); ellipse(906, 878, sim, sim);
fill(satsim);
stroke(255);
//line
ellipse(1004, 200, sim, sim); ellipse(1112, 200, sim, sim); ellipse(1220, 200, sim, sim); ellipse(1328, 200, sim, sim);
ellipse(1436, 200, sim, sim); ellipse(1540, 200, sim, sim); ellipse(1652, 200, sim, sim); ellipse(1760, 200, sim, sim);
//line 2
ellipse(1004, 313, sim, sim); ellipse(1112, 313, sim, sim); ellipse(1220, 313, sim, sim); ellipse(1328, 313, sim, sim);
ellipse(1436, 313, sim, sim); ellipse(1540, 313, sim, sim); ellipse(1652, 313, sim, sim); ellipse(1760, 313, sim, sim);
//line 3
ellipse(1004, 426, sim, sim); ellipse(1112, 426, sim, sim); ellipse(1220, 426, sim, sim); ellipse(1328, 426, sim, sim);
ellipse(1436, 426, sim, sim); ellipse(1540, 426, sim, sim); ellipse(1652, 426, sim, sim); ellipse(1760, 426, sim, sim);
//line 4
ellipse(1004, 539, sim, sim); ellipse(1112, 539, sim, sim); ellipse(1220, 539, sim, sim); ellipse(1328, 539, sim, sim);
ellipse(1436, 539, sim, sim); ellipse(1540, 539, sim, sim); ellipse(1652, 539, sim, sim); ellipse(1760, 539, sim, sim);
//line 5
ellipse(1004, 652, sim, sim); ellipse(1112, 652, sim, sim); ellipse(1220, 652, sim, sim); ellipse(1328, 652, sim, sim);
ellipse(1436, 652, sim, sim); ellipse(1540, 652, sim, sim); ellipse(1652, 652, sim, sim); ellipse(1760, 652, sim, sim);
//line 6
ellipse(1004, 767, sim, sim); ellipse(1112, 767, sim, sim); ellipse(1220, 767, sim, sim); ellipse(1328, 767, sim, sim);
ellipse(1436, 767, sim, sim); ellipse(1540, 767, sim, sim); ellipse(1652, 767, sim, sim); ellipse(1760, 767, sim, sim);
//line 7
ellipse(1004, 878, sim, sim); ellipse(1112, 878, sim, sim); ellipse(1220, 878, sim, sim); ellipse(1328, 878, sim, sim);
ellipse(1436, 878, sim, sim); ellipse(1540, 878, sim, sim); ellipse(1652, 878, sim, sim); ellipse(1760, 878, sim, sim);
popMatrix();
}
//||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
void mousePressed() {
//TASTO 1---------------------
if (rectOver1) {
g0=0;
g1 = 2000;
g2= 0;
g3= 0;
g4= 0;
g5= 0;
g6= 0;
}
//TASTO 2----------------------
if (rectOver2) {
g0=0;
g1 = 0;
g2= 2000;
g3= 0;
g4= 0;
g5= 0;
g6= 0;
}
//TASTO 3------------------
if (rectOver3) {
g0=0;
g1 = 0;
g2= 0;
g3= 2000;
g4= 0;
g5= 0;
g6= 0;
}
//TASTO 4---------------------
if (rectOver4) {
g0=0;
g1 = 0;
g2= 0;
g3= 0;
g4= 2000;
g5= 0;
g6= 0;
}
//TASTO 5----------------------------
if (rectOver5) {
g0=0;
g1 = 0;
g2= 0;
g3= 0;
g4= 0;
g5= 2000;
g6= 0;
}
//TASTO 6----------------------------
if (rectOver6) {
g0=0;
g1 = 0;
g2= 0;
g3= 0;
g4= 0;
g5= 0;
g6= 2000;
}
}