This self portrait was first designed on graph paper, on a 10×10 grid. This allowed me to easily map the shapes onto the 600 x 600 canvas and determine the coordinates for the various shapes.
function setup() {
createCanvas(200, 20);
background(220);
text("p5.js vers 0.5.12 test.", 10, 15);
}
function draw() {
createCanvas(600, 600);
background(200);
noStroke();
fill('black');
arc(210, 210, 65, 65, 0, PI, CHORD);
fill('rgb(100%,0%,10%)');
arc(210, 210, 50, 50, 0, PI, CHORD);
fill('#222222');
quad(60, 240, 180, 480, 300, 540, 150, 480);
//fill('black');
triangle(150, 145, 270, 180, 120, 180);
triangle(450, 145, 330, 180, 480, 180);
triangle(320, 210, 360, 320, 320, 340)
quad(320, 210, 480, 210, 420, 260, 320, 240);
quad(540, 300, 450, 480, 330, 540, 450, 360);
triangle(320, 480, 345, 480, 320, 520);
stroke(0);
strokeWeight(5);
line(240, 450, 360, 450);
line(60, 330, 90, 330);
triangle(45, 240, 75, 330, 60, 330);
triangle(285, 300, 280, 345, 255, 355);
//line(300, 0, 300, 600);
arc(280, 380, 30, 30, PI + QUARTER_PI, 0, CHORD);
arc(340, 380, 30, 30, PI, PI + HALF_PI + QUARTER_PI, CHORD);
strokeWeight(10)
line(60, 210, 480, 210);
noFill();
quad(115, 210, 120, 290, 270, 290, 290, 210);
}