import processing.core.*; import processing.xml.*; import java.applet.*; import java.awt.Dimension; import java.awt.Frame; import java.awt.event.MouseEvent; import java.awt.event.KeyEvent; import java.awt.event.FocusEvent; import java.awt.Image; import java.io.*; import java.net.*; import java.text.*; import java.util.*; import java.util.zip.*; import java.util.regex.*; public class Nollaharjoitus extends PApplet { boolean nelio = false; boolean ympyra = false; boolean iso = false; int vari=color(0); int Xpaikka=mouseX; int Ypaikka=mouseY; public void setup() { size(800, 600); background(255); noStroke(); fill(137); rect(0,0,width/10,height); piirraNapit(); } public void piirraNapit() { //ehka hieman hankala tapa merkita koordinaatit sidottuna ruudun kokoon, mutta kokeillaan int palkinLeveys = width/10; int nurkanX = palkinLeveys/3; // color vari = (0); //PIKKUSUTI fill(120); rect(nurkanX,50,30,30); //KESKISUTI noStroke(); fill(120); rect(nurkanX,90,30,30); //ISOSUTI fill(120); rect(nurkanX,130,30,30); //Ympyrat suteihin //Pieni fill(0); ellipse(nurkanX+15,65,10,10); //Keski ellipse(nurkanX+15,105,15,15); //Iso ellipse(nurkanX+15,145,20,20); //Nayttaa tamanhetkisenvarin piirraVaripaletti(); //VARINAPIT //Punainen fill(255,0,0); rect(nurkanX-10,height/2,20,20); //Vihrea fill(0,255,0); rect(nurkanX+10,height/2,20,20); //Sininen fill(0,0,255); rect(nurkanX-10,(height/2)+20,20,20); //Musta fill(0); rect(nurkanX+10,(height/2)+20,20,20); //Kumi fill(255); rect(nurkanX-5,(height/2)+45,30,30); //RESET-NAPPI strokeWeight(1); stroke(0); fill(255); rect(15,540,40,40); createFont("FFScala",12); fill(0); textAlign(LEFT); text("Reset",18,565); } public void draw() { //tarkistetaan, ettei piirreta nappien paalle if (mouseX > width/10) { if (nelio==true) { if (mousePressed) { strokeWeight(10); stroke(vari); line(Xpaikka,Ypaikka, mouseX, mouseY); } } if (ympyra==true) { if (mousePressed) { strokeWeight(15); stroke(vari); line(Xpaikka,Ypaikka,mouseX, mouseY); } } if (iso==true) { if (mousePressed) { strokeWeight(20); stroke(vari); line(Xpaikka,Ypaikka,mouseX, mouseY); } } Xpaikka=mouseX; Ypaikka=mouseY; //Sulkee piirtely osion } else { //valitaan tyokalut int palkinLeveys = width/10; int nurkanX = palkinLeveys/3; if (mouseX>nurkanX && mouseX50 && mouseY<80) { if (mousePressed) { nelio = true; ympyra = false; iso = false; } } if (mouseX>nurkanX && mouseX90 && mouseY<120) { if (mousePressed) { nelio = false; ympyra = true; iso = false; } } if (mouseX>nurkanX && mouseX130 && mouseY<160) { if (mousePressed) { nelio = false; ympyra = false; iso = true; } } //VARIN Valinta //Punainen if (mouseX>nurkanX-10 && mouseXheight/2 && mouseY<(height/2)+20) { if (mousePressed) { vari=color(255,0,0); piirraVaripaletti(); } } //Vihrea if (mouseX>nurkanX+10 && mouseXheight/2 && mouseY<(height/2)+20) { if (mousePressed) { vari=color(0,255,0); piirraVaripaletti(); } } //Sininen if (mouseX>nurkanX-10 && mouseX(height/2)+20 && mouseY<(height/2)+40) { if (mousePressed) { vari=color(0,0,255); piirraVaripaletti(); } } //Musta if (mouseX>nurkanX+10 && mouseX(height/2)+20 && mouseY<(height/2)+40) { if (mousePressed) { vari=color(0); piirraVaripaletti(); } } //Valkoinen if (mouseX>nurkanX-5 && mouseX(height/2)+45 && mouseY<(height/2)+75) { if (mousePressed) { vari=color(255); piirraVaripaletti(); } } //TAUSTAN RESETOINTI if (mouseX>15 && mouseX<55 && mouseY>540 && mouseY<580) { if (mousePressed) { setup(); } } } } //Nayttaa kayttajallekaytettavan varin public void piirraVaripaletti() { noStroke(); int palkinleveys=width/10; int keskipisteenX = (palkinleveys/2)-5; fill(vari); ellipse(keskipisteenX,(height/2)-25,35,15); } static public void main(String args[]) { PApplet.main(new String[] { "--bgcolor=#F0F0F0", "Nollaharjoitus" }); } }