Mirall de línies

Programadors: 

Gil Espada i Liam Viader

Instruccions:

Dibuixa línies clicant al botó esquerra, fes un reset clicant al botó dret.

 


Codi:

void setup() {
size(800, 800);
background(0);
//Inicialitzem la pantalla
}

void draw() {
if (mousePressed && (mouseButton == LEFT)) {
strokeWeight(5);
//Si el butó esquerra està apretat s’asigna la mida de la línea a 30.
stroke(mouseX, mouseY-mouseX, mouseY, 100);
//També si està apretat el color de la linea cambia depenent de l’eix on tinguis el mouse, i assignem la transparència a 100, per tant depenet de la velocitat del mouse, es veu d’una manera o altra.
} else if (mousePressed && (mouseButton == RIGHT)) {
background(0);
stroke(0);
//Si està apretat el botó dret, s’esborra la pantalla.
} else {
noStroke();
}
float alpha =PI*3/8;
strokeWeight(7);
//a continuació estàn els punts de les diferents lineas que s’insereixen.
line(width-mouseX, mouseY, width-pmouseX, pmouseY);
line(mouseX, mouseY, pmouseX, pmouseY);
line(mouseX, height-mouseY, pmouseX, height-pmouseY);
line(width-mouseX, height-mouseY, width-pmouseX, height-pmouseY);
line(width-mouseY, mouseX, width-pmouseY, pmouseX);
line(mouseY, mouseX, pmouseY, pmouseX);
line(mouseY, height-mouseX, pmouseY, height-pmouseX);
line(width-mouseY, height-mouseX, width-pmouseY, height-pmouseX);

alpha =PI*3/8;
line(cos(alpha)*(mouseX – width/2) -sin(alpha)*(mouseY – height/2) + width/2, -sin(alpha)*(mouseX – width/2)-cos(alpha)*(mouseY – height/2) + height/2,
cos(alpha)*(pmouseX – width/2)-sin(alpha)*(pmouseY – height/2) + width/2, -sin(alpha)*(pmouseX – width/2)-cos(alpha)*(pmouseY – height/2)+ height/2);

alpha = PI/8;
line(cos(alpha)*(mouseX – width/2) -sin(alpha)*(mouseY – height/2) + width/2, -sin(alpha)*(mouseX – width/2)-cos(alpha)*(mouseY – height/2) + height/2,
cos(alpha)*(pmouseX – width/2)-sin(alpha)*(pmouseY – height/2) + width/2, -sin(alpha)*(pmouseX – width/2)-cos(alpha)*(pmouseY – height/2)+ height/2);
alpha = 5*PI/8;
line(cos(alpha)*(mouseX – width/2) -sin(alpha)*(mouseY – height/2) + width/2, -sin(alpha)*(mouseX – width/2)-cos(alpha)*(mouseY – height/2) + height/2,
cos(alpha)*(pmouseX – width/2)-sin(alpha)*(pmouseY – height/2) + width/2, -sin(alpha)*(pmouseX – width/2)-cos(alpha)*(pmouseY – height/2)+ height/2);
alpha = 7*PI/8;
line(cos(alpha)*(mouseX – width/2) -sin(alpha)*(mouseY – height/2) + width/2, -sin(alpha)*(mouseX – width/2)-cos(alpha)*(mouseY – height/2) + height/2,
cos(alpha)*(pmouseX – width/2)-sin(alpha)*(pmouseY – height/2) + width/2, -sin(alpha)*(pmouseX – width/2)-cos(alpha)*(pmouseY – height/2)+ height/2);
alpha = 9*PI/8;
line(cos(alpha)*(mouseX – width/2) -sin(alpha)*(mouseY – height/2) + width/2, -sin(alpha)*(mouseX – width/2)-cos(alpha)*(mouseY – height/2) + height/2,
cos(alpha)*(pmouseX – width/2)-sin(alpha)*(pmouseY – height/2) + width/2, -sin(alpha)*(pmouseX – width/2)-cos(alpha)*(pmouseY – height/2)+ height/2);
alpha = 11*PI/8;
line(cos(alpha)*(mouseX – width/2) -sin(alpha)*(mouseY – height/2) + width/2, -sin(alpha)*(mouseX – width/2)-cos(alpha)*(mouseY – height/2) + height/2,
cos(alpha)*(pmouseX – width/2)-sin(alpha)*(pmouseY – height/2) + width/2, -sin(alpha)*(pmouseX – width/2)-cos(alpha)*(pmouseY – height/2)+ height/2);
alpha = 13*PI/8;
line(cos(alpha)*(mouseX – width/2) -sin(alpha)*(mouseY – height/2) + width/2, -sin(alpha)*(mouseX – width/2)-cos(alpha)*(mouseY – height/2) + height/2,
cos(alpha)*(pmouseX – width/2)-sin(alpha)*(pmouseY – height/2) + width/2, -sin(alpha)*(pmouseX – width/2)-cos(alpha)*(pmouseY – height/2)+ height/2);
alpha = 15*PI/8;
line(cos(alpha)*(mouseX – width/2) -sin(alpha)*(mouseY – height/2) + width/2, -sin(alpha)*(mouseX – width/2)-cos(alpha)*(mouseY – height/2) + height/2,
cos(alpha)*(pmouseX – width/2)-sin(alpha)*(pmouseY – height/2) + width/2, -sin(alpha)*(pmouseX – width/2)-cos(alpha)*(pmouseY – height/2)+ height/2);

}

Deja un comentario