/* Project 1 Interactive Drawing Allie Arnott 991396872 Bathtub Ducky Vertical Mouse movement controls bubbles Horizontal mouse movement controls Ducky */ void setup() { //window size size(400, 400); //remove cursor noCursor(); } void draw() { //removes stroke noStroke(); //background background(253, 255, 240); //wall gradient fill(205, 245, 217, 25); rectMode(CORNERS); rect(0, 250, 400, 0); rect(0, 225, 400, 0); rect(0, 200, 400, 0); rect(0, 175, 400, 0); rect(0, 150, 400, 0); rect(0, 125, 400, 0); rect(0, 100, 400, 0); rect(0, 75, 400, 0); rect(0, 50, 400, 0); rect(0, 25, 400, 0); //static water fill(162, 234, 255); rectMode(CORNER); rect(0,300,400,100); //static water gradient fill(72, 178, 209, 25); rect(0, 310, 400, 100); rect(0, 320, 400, 100); rect(0, 330, 400, 100); rect(0, 340, 400, 100); rect(0, 350, 400, 100); rect(0, 360, 400, 100); rect(0, 370, 400, 100); rect(0, 380, 400, 100); rect(0, 390, 400, 100); //static foam fill(232, 255, 255,191); ellipse(10,300,80,30); ellipse(30,300,50,30); ellipse(90,300,95,40); ellipse(130,300,130,55); ellipse(200,300,100,45); ellipse(290,300,95,40); ellipse(330,300,60,30); ellipse(360,300,80,45); //ducky dependant on mouseX fill(240, 235, 120); //main body colour //duck head ellipse(+10 + (mouseX * 1.5), 200, 90, 90); //duck body ellipse(+35 + (mouseX * 1.5), 270, 150, 100); //duck tail ellipse(+112 + (mouseX * 1.5), 240, 37, 27); //tail part 1 triangle(+100 + (mouseX * 1.5), 290, +100 + (mouseX * 1.5), 245, +130 + (mouseX * 1.5), 245); //tail part 2 //duck wing fill(227, 223, 101); //wing colour ellipse(+10 + (mouseX * 1.5), 270, 55, 55); //wing part 1 ellipse(+40 + (mouseX * 1.5), 260, 35, 35); //wing part 2 triangle(+10 + (mouseX * 1.5), 242, +10 + (mouseX * 1.5), 260, +40 + (mouseX * 1.5), 242); //wing part 3 triangle(+20 + (mouseX * 1.5), 297, +20 + (mouseX * 1.5), 270, +50 + (mouseX * 1.5), 272); //wing part 4 //duck beak fill(250, 209, 73); //beak colour triangle(-60 + (mouseX * 1.5), 220, -33 + (mouseX * 1.5), 190, -30 + (mouseX * 1.5), 220); //beak triangle ellipse(-25 + (mouseX * 1.5), 210, 25, 25); //beak cheek //duck eye fill(250); //eye white ellipse(-15 + (mouseX * 1.5), 183, 20, 25); //eye white fill(47, 131, 245); //blue iris ellipse(-18 + (mouseX * 1.5), 185, 15, 15); //iris fill(0); //pupil black ellipse(-20 + (mouseX * 1.5), 187, 10, 10); //pupil fill(245); //shine white-grey ellipse(-14 + (mouseX * 1.5), 183, 5, 5); //eye shine //bubbles for duck dependant on mouse fill(232, 255, 255,191); //matches background foam ellipse(-40 + (mouseX * 1.5), 300, 45, 30); ellipse(-25 + (mouseX * 1.5), 300, 25, 20); ellipse(-5 + (mouseX * 1.5), 310, 55, 30); ellipse(+20 + (mouseX * 1.5), 320, 67, 40); ellipse(+10 + (mouseX * 1.5), 305, 20, 20); ellipse(+35 + (mouseX * 1.5), 296, 30, 30); ellipse(+45 + (mouseX * 1.5), 320, 40, 40); ellipse(+60 + (mouseX * 1.5), 315, 45, 40); ellipse(+75 + (mouseX * 1.5), 310, 57, 30); ellipse(+99 + (mouseX * 1.5), 300, 50, 30); //bubbles dependant on mouseY //bubble set colour 1 fill(218,242,242,127); ellipse(25, -110 + (mouseY * 4), 40, 40); ellipse(40, +40 + (mouseY * 3), 50, 50); ellipse(100, -200 + (mouseY * 3), 60, 60); ellipse(175, -40 + (mouseY * 3), 20, 20); ellipse(350, -180 + (mouseY * 5), 45, 45); ellipse(270, -10 + (mouseY * 2), 75, 75); //bubble set colour 2 fill(229, 255, 253, 187); ellipse(75, -210 + (mouseY * 3), 25, 25); ellipse(130, +50 + (mouseY * 4), 50, 50); ellipse(260, +80 + (mouseY *6), 35, 35); ellipse(310, -100 + (mouseY * 2.5), 80, 80); //bubble set colour 3 fill(245, 252, 252, 157); ellipse(120, +40 + (mouseY * 3), 45, 45); ellipse(205, -30 + (mouseY * 4), 60, 60); ellipse(165, -45 + (mouseY * 3), 35, 35); ellipse(105, +70 + (mouseY * 5.5), 42, 42); }