//Fish Tank //Rachel Keilhofer //Instructions: //Move mouse to move fish //Press mouse button to change colours //Press any key to animate fish void setup() { //Set the size of the window size(400, 400); } void draw() { //Set frame rate frameRate(20); //Set ellipse to CENTER mode ellipseMode(CENTER); //Draw a light blue background background(100, 200, 255, 200); //Draw Dark Blue Base fill(0, 100, 155, 200); noStroke(); ellipse(200, 400, 400, 160); //Set rectangle and ellipse to CORNERS mode rectMode(CORNERS); ellipseMode(CORNERS); //Draw Light Green Seaweed noStroke(); fill(50, 240, 10, 220); //Draw triangle triangle(40, 130, 50, 110, 60, 130); //Draw rectangle rect(45, 120, 55, 380); //Draw circles ellipse(40, 360, 60, 380); ellipse(40, 320, 60, 340); ellipse(40, 280, 60, 300); ellipse(40, 240, 60, 260); ellipse(40, 200, 60, 220); ellipse(40, 160, 60, 180); ellipse(40, 120, 60, 140); //Draw Dark Green Seaweed fill(50, 160, 10, 220); //Draw triangle triangle(150, 70, 140, 90, 160, 90); //Draw rectangle rect(145, 80, 155, 340); //Draw circles ellipse(140, 320, 160, 340); ellipse(140, 280, 160, 300); ellipse(140, 240, 160, 260); ellipse(140, 200, 160, 220); ellipse(140, 160, 160, 180); ellipse(140, 120, 160, 140); ellipse(140, 80, 160, 100); //Draw Mid-tone Green Seaweed fill(50, 200, 10, 220); //Draw triangle triangle(330, 90, 320, 110, 340, 110); //Draw rectangle rect(325, 100, 335, 360); //Draw circles ellipse(320, 340, 340, 360); ellipse(320, 300, 340, 320); ellipse(320, 260, 340, 280); ellipse(320, 220, 340, 240); ellipse(320, 180, 340, 200); ellipse(320, 140, 340, 160); ellipse(320, 100, 340, 120); //Draw Orange Fish fill(255, 150, 20); ellipseMode(CENTER); //Draw fish body ellipse(mouseX, mouseY, 80, 60); //Draw fish tail triangle(mouseX+30, mouseY, mouseX+60, mouseY-30, mouseX+60, mouseY+30); //Draw fin fill(255, 100, 0); triangle(mouseX, mouseY, mouseX+20, mouseY-20, mouseX+20, mouseY+20); //Draw white fish eye fill(255); ellipse(mouseX-20, mouseY-5, 15, 15); //Draw fish pupil fill(0); ellipse(mouseX-22.5, mouseY-5, 7.5, 7.5); //Draw fish mouth stroke(0); strokeWeight(2); line(mouseX-35, mouseY+10, mouseX-20, mouseY+10); noStroke(); } //Change colours when mouse is pressed void mousePressed() { //Set frame rate frameRate(5); //Set ellipse to CENTER mode ellipseMode(CENTER); //Draw a light pink background background(230, 150, 150, 200); //Draw dark pink base fill(255, 50, 50, 200); noStroke(); ellipse(200, 400, 400, 160); //Set rectangle and ellipse to CORNERS mode rectMode(CORNERS); ellipseMode(CORNERS); //Draw Light Purple Seaweed noStroke(); fill(255, 50, 255, 220); //Draw triangle triangle(40, 130, 50, 110, 60, 130); //Draw rectangle rect(45, 120, 55, 380); //Draw circles ellipse(40, 360, 60, 380); ellipse(40, 320, 60, 340); ellipse(40, 280, 60, 300); ellipse(40, 240, 60, 260); ellipse(40, 200, 60, 220); ellipse(40, 160, 60, 180); ellipse(40, 120, 60, 140); //Draw Dark Purple Seaweed fill(200, 0, 255, 220); //Draw triangle triangle(150, 70, 140, 90, 160, 90); //Draw rectangle rect(145, 80, 155, 340); //Draw circles ellipse(140, 320, 160, 340); ellipse(140, 280, 160, 300); ellipse(140, 240, 160, 260); ellipse(140, 200, 160, 220); ellipse(140, 160, 160, 180); ellipse(140, 120, 160, 140); ellipse(140, 80, 160, 100); //Draw Mid-tone Pink Seaweed fill(225, 25, 255, 220); //Draw triangle triangle(330, 90, 320, 110, 340, 110); //Draw rectangle rect(325, 100, 335, 360); //Draw circles ellipse(320, 340, 340, 360); ellipse(320, 300, 340, 320); ellipse(320, 260, 340, 280); ellipse(320, 220, 340, 240); ellipse(320, 180, 340, 200); ellipse(320, 140, 340, 160); ellipse(320, 100, 340, 120); //Draw Orange Fish fill(255, 150, 20); ellipseMode(CENTER); //Draw fish body ellipse(mouseX, mouseY, 80, 60); //Draw fish tail triangle(mouseX+30, mouseY, mouseX+60, mouseY-30, mouseX+60, mouseY+30); //Draw fin fill(255, 100, 0); triangle(mouseX, mouseY, mouseX+20, mouseY-20, mouseX+20, mouseY+20); //Draw white fish eye fill(255); ellipse(mouseX-20, mouseY-5, 15, 15); //Draw fish pupil fill(0); ellipse(mouseX-22.5, mouseY-5, 7.5, 7.5); //Draw fish mouth stroke(0); strokeWeight(2); line(mouseX-35, mouseY+10, mouseX-20, mouseY+10); noStroke(); } //Press any key, fish smiles and blows bubbles void keyPressed() { //Lower Frame Rate frameRate(5); //Draw white fish eye fill(255); ellipse(mouseX-20, mouseY-5, 15, 15); //Draw fish pupil fill(0); ellipse(mouseX-17.5, mouseY-7.5, 7.5, 7.5); //Draw fish mouth stroke(0); strokeWeight(2); line(mouseX-35, mouseY+10, mouseX-20, mouseY+10); //Draw fish mouth bottom line(mouseX-20, mouseY+10, mouseX-28, mouseY+20); //Draw bubbles noStroke(); strokeWeight(1); fill(0, 150, 255, 150); ellipse(mouseX-65, mouseY-15, 15, 15); ellipse(mouseX-45, mouseY-45, 15, 15); ellipse(mouseX-60, mouseY-80, 15, 15); //Draw bubble hightlights fill(255, 200); ellipse(mouseX-62.5, mouseY-17.5, 7, 7); ellipse(mouseX-42.5, mouseY-47.5, 7, 7); ellipse(mouseX-57.5, mouseY-82.5, 7, 7); }