|
int k;
int c_alpha = 255;
int dx, dy;
float speed, ang;
int angColor = 0;
int useAlpha = 0;
int multi = 0;
void setup()
{
size(300, 200);
background(255, 255, 255);
rectMode(CENTER_DIAMETER);
ellipseMode(CENTER_DIAMETER);
}
void loop()
{
dx = mouseX - pmouseX;
dy = mouseY - pmouseY;
speed = sqrt(dx*dx + dy*dy);
ang = degrees(atan2(dx, dy));
//println("angle="+ang);
if (mousePressed == true) {
//fill(255, 150, 150);
//stroke(150, 150, 255);
//strokeWeight(3);
if (k == 1) {
if (useAlpha == 0) {
line(pmouseX, pmouseY, mouseX, mouseY);
} else {
stroke(0, 0, 0, speed);
for (int i = 0; i < width; i+= 5) {
line(mouseX, mouseY, i, height);
}
}
} else if (k == 2) {
if (useAlpha == 0) {
if (angColor == 1) {
fill(ang, 0, 0, 20);
}
rect(mouseX, mouseY, speed, speed);
if (multi == 1) {
rect(mouseX-(speed+5), mouseY-(speed+5), speed, speed);
rect(mouseX+(speed+5), mouseY-(speed+5), speed, speed);
rect(mouseX-(speed+5), mouseY+(speed+5), speed, speed);
rect(mouseX+(speed+5), mouseY+(speed+5), speed, speed);
}
} else {
noStroke();
fill(speed, 0, 0, 50);
for (int i = 0; i < speed; i+=5) {
rect(mouseX, mouseY, speed+i, speed+i);
}
}
} else if (k == 3) {
if (useAlpha == 0) {
if (angColor == 1) {
fill(ang, 0, 0, 20);
}
ellipse(mouseX, mouseY, speed, speed);
if (multi == 1) {
ellipse(mouseX-(speed+5), mouseY-(speed+5), speed, speed);
ellipse(mouseX+(speed+5), mouseY-(speed+5), speed, speed);
ellipse(mouseX-(speed+5), mouseY+(speed+5), speed, speed);
ellipse(mouseX+(speed+5), mouseY+(speed+5), speed, speed);
}
} else {
noStroke();
fill(speed, 0, 0, 50);
for (int i = 0; i < speed; i+=5) {
ellipse(mouseX, mouseY, speed+i, speed+i);
}
}
} else if (k == 9) {
stroke(255, 255, 255);
fill(255, 255, 255, c_alpha);
ellipse(mouseX, mouseY, speed, speed);
}
}
}
void keyPressed()
{
if (key == '-' || key == '-') {
background(255, 255, 255);
}
if (key == '1') {
k = 1;
stroke(0, 0, 0);
useAlpha = 0;
angColor = 0;
multi = 0;
} else if (key == '2') {
k = 2;
useAlpha = 0;
angColor = 0;
multi = 0;
} else if (key == '3') {
k = 3;
useAlpha = 0;
angColor = 0;
multi = 0;
} else if (key == '4') {
angColor = 0;
stroke(0, 0, 0); // black
//noStroke();
fill(255, 150, 150, c_alpha); // light red
//k = 4;
} else if (key == '5') {
angColor = 0;
stroke(0, 0, 0); // black
//noStroke();
fill(150, 255, 150, c_alpha); // light green
//k = 5;
} else if (key == '6') {
angColor = 0;
stroke(0, 0, 0); // black
//noStroke();
fill(150, 150, 255, c_alpha); // light blue
//k = 6;
} else if (key == '7') {
angColor = 0;
stroke(0, 0, 0); // black
//noStroke();
fill(255, 255, 150, c_alpha); // light yellow
//k = 7;
} else if (key == '8') {
angColor = 0;
stroke(0, 0, 0); // black
fill(255, 255, 255, c_alpha); // white
//k = 8;
} else if (key == '9') {
useAlpha = 0;
angColor = 0;
k = 9;
}
if (key == 's') {
saveFrame();
}
if (key == '[') {
c_alpha += 10;
if (c_alpha > 255) {
c_alpha = 255;
}
}
if (key == ']') {
c_alpha -= 10;
if (c_alpha < 0) {
c_alpha = 0;
}
}
if (key == 'q' || key == 'Q') {
useAlpha = 1;
}
////////////
if (key == 'p') {
angColor = 1;
}
if (key == 'm') {
multi = 1;
}
}
|