self portraitDownload
function setup() {
createCanvas(600, 600);
background(123, 151, 180);
}
function draw() {
stroke(0);
strokeWeight(4);
fill(247, 205, 174); //skin color
ellipse(300, 300, 340, 380); //face
line(200, 270, 270, 270); //left eyebrow
line(330, 270, 400, 270); //right eyebrow
stroke(0);
strokeWeight(3);
fill(127, 62, 41); //brown left eye
ellipse(235, 300, 30, 50);
ellipse(365, 300, 30, 50); //right eye
fill(236, 121, 67); //nose orange
triangle(300, 330, 290, 350, 310, 350);
fill(236, 121, 134); //mouth pink
arc(300, 390, 80, 50, -radians(5),radians(185),CHORD);
fill(246, 190, 185); //left cheek pink
ellipse(170, 360, 80, 30);
fill(246, 190, 185); //right cheek pink
ellipse(430, 360, 80, 30);
fill(248, 157, 54); //hat yellow
rect(180, 110, 240, 33);
triangle(210, 70, 180, 110, 240, 110);
triangle(270, 70, 240, 110, 300, 110);
triangle(330, 70, 300, 110, 360, 110);
triangle(390, 70, 360, 110, 420, 110);
fill(48, 0, 0); //hair brown
circle(120, 180, 80, 80);
circle(480, 180, 80, 80);
fill(243, 75, 44); //jewel red
square(204, 60, 12);
square(264, 60, 12);
square(324, 60, 12);
square(384, 60, 12);
noLoop();
}
The most interesting part of the project is figuring out which shapes work best for each facial feature and how a slight angle change can change the entire expression.