xxxxxxxxxx
75
function setup() {
createCanvas(400, 400);
c1 = color(237, 157, 138);
c2 = color(255);
setGradient(c1, c2)
}
function draw() {
for (var j = 1; j < 7; j = j + 1) {
for (var i = 1; i < 7; i = i + 1) {
mochi((i * 30) - 6, (j * 30) - 10)
}
}
}
function setGradient(c1, c2) {
noFill();
for (var y = 0; y < height; y++) {
var inter = map(y, 0, height, 0, 1);
var c = lerpColor(c1, c2, inter);
stroke(c);
line(0, y, width, y);
}
}
function mochi(x, y) {
stroke(53, 38, 18);
fill(250, 241, 223);
//body
push()
translate(x, y)
beginShape();
strokeWeight(2);
vertex(x, y);
bezierVertex(x + 30, y + 10, x + 30, y + 30, x, y + 30);
vertex(x, y + 30);
bezierVertex(x - 30, y + 30, x - 30, y + 10, x, y);
strokeCap(ROUND);
endShape(CLOSE);
//eyeballs
strokeWeight(5);
stroke(53, 38, 18)
point(x - 10, y + 15);
point(x + 10, y + 15);
//leaf heart
beginShape();
strokeWeight(1);
stroke(53, 38, 18)
fill(95, 176, 55)
vertex(x - 8, y - 5);
bezierVertex(x - 3, y - 20, x - 3, y + 5, x - 5, y + 1);
vertex(x - 5, y + 1);
bezierVertex(x - 13, y, x - 13, y - 10, x - 8, y - 5);
endShape();
//pink underbags
fill(188, 105, 124);
strokeWeight(1);
stroke(188, 105, 124);
ellipse(x - 10, y + 20, 1, 2);
ellipse(x + 10, y + 20, 1, 2);
//lips
strokeWeight(2);
stroke(53, 38, 18);
line(x + 4, y + 20, x - 4, y + 20);
pop()
}