sketch//Jessie Chen
//D
var half = 225
function setup() {
createCanvas(450, 600);
}
function draw() {
mouseX = constrain(mouseX, 0, 440);
//bee
background(123, 176, 223);
noStroke();
var bY = constrain(bY, 200, 300);
var w = 15 + (mouseX * 0.03);
var h = 10 + (mouseX * 0.03);
//petal behind bee
fill(233, 120, 79);
ellipse(half, 330 - (h * 3), w * 3, h * 3);
//bee
push();
var bY = 200;
if (mouseX < half) {
translate(60, 0);
rotate(radians(15));
} else {
translate(-25, 110);
rotate(radians(345));
}
fill(202, 228, 250);
ellipse(mouseX - 5, bY - 13, w, h);
ellipse(mouseX - 15, bY - 15, w, h); //wings
fill(255, 229, 122);
ellipse(mouseX, bY, 40, 25); //body
fill(60, 60, 60);
rect(mouseX - 15, bY - 9 , 5, 19, 100, 5, 40, 40); //black lines
rect(mouseX - 6, bY - 12, 5, 24, 100, 5, 40, 40);
rect(mouseX + 3, bY - 11.5, 5, 23, 100, 5, 40, 40);
ellipse(mouseX + 13, bY - 2, 5, 5); //eye
stroke(60);
line(mouseX + 16, bY - 8, mouseX + 18, bY - 12); //attennas
line(mouseX +14, bY - 8, mouseX + 14, bY - 14);
line(mouseX - 21, bY, mouseX - 24, bY); //stinger
//sun
pop();
fill(255, 213, 0);
ellipse(half, 0, 250 + w, 250 + h);
//clouds
fill(245, 255, 255);
rect(mouseX - 100, 50, 100, 75, 35);
rect(mouseX - 60, 85, 95, 55, 35);
rect(mouseX - 350, 55, 120, 55, 35);
rect(mouseX + 100, 20, 120, 55, 35);
rect(mouseX - 270, 40, 75, 50, 35);
rect(mouseX + 300, 75, 80, 40, 35);
rect(mouseX + 250, 65, 70, 30, 35);
//stem
fill(115, 172, 111);
rect(half - 7.5, 340 - (h * 2), 15, 400, 30);
//leaves
push();
translate(193, 100);
rotate(radians(25));
ellipse(half - 19, 440, w * 3, 20 + h);
ellipse(half - 94, 280, w * 3, 20 + h);
pop();
push();
translate(-150, 200);
rotate(radians(335));
ellipse(half + 19, 440, w * 3, 20 + h);
//flower
pop();
fill(233, 120, 79); // back petals
ellipse(half - 30, 360 - (h * 3), w * 4, h * 3);
ellipse(half + 30, 360 - (h * 3), w * 4, h * 3);
ellipse(half + 25, 345 - (h * 3), w * 5, h * 3);
ellipse(half - 25, 345 - (h * 3), w * 5, h * 3);
fill(255, 215, 102);
ellipse(half, 360 - (h * 4), w * 3, h * 2); //center
rect(half - 10, 385 - (h * 7), 2, 3 + h, 20);
rect(half + 10, 385 - (h * 7), 2, 3 + h, 20);
rect(half, 380 - (h * 7), 2, 3 + h, 20);
rect(half - 20, 390 - (h * 7), 2, 3 + h, 20);
rect(half + 20, 390 - (h * 7), 2, 3 + h, 20);
fill(233, 120, 79); // front petal
ellipse(half, 360 - (h * 3), w * 3, h * 3);
}
This was inspired by the mutualistic relationship between the bee and the flower. The bee is becoming full while the flower is being pollinated, allowing it to grow and reproduce.