When starting this project, I knew that I wanted to capture both my facial features as well as my personality, and to express a playful and friendly tone. However, as I started to sketch out some initial ideas, I realized that I really had to simplify my concept and make it more geometric, as I didn’t know how to create weird or irregular organic shapes. While I had some trouble trying to figure out p5.js and sublime, this project really helped me to learn some of the basics, and to explore what I could do.
//Julia Nishizaki
//jnishiza@andrew.cmu.edu
//Section B, Project 01 Self-Portrait
function setup() {
createCanvas(600,600);
background(251,177,97);
rectMode(CENTER);
noStroke();
//shirt
c = color('rgb(34,40,92)');
fill(c);
rect(375,415,110,50,20,25,0,0);
c = color('rgb(25,32,66)');
fill(c);
arc(340,600,200,415,PI,PI + HALF_PI);
c = color('rgb(34,40,92)');
fill(c);
arc(340,600,370,415,PI + HALF_PI,0);
arc(350,600,50,255,PI,PI + HALF_PI);
//hair behind face
fill('black');
circle(280,195,190);
//dark grey, side shave
c=color('rgb(49,46,47)');
fill(c);
rect(350,170,250,180,55,80,0,0);
//skin
c = color('rgb(248,212,178)');
fill(c);
circle(455,275,90);
circle(460,305,50);
square(370,380,80);
triangle(330,420,410,420,340,480);
arc(350,275,250,255,0,PI,PIE);
rect(340,210,230,150,0,80,0,0);
//sideburns
c=color('rgb(49,46,47)');
fill(c);
rect(465,220,20,120,0,0,10,5);
//hair
fill('black');
arc(340,115,110,110,PI,0,PIE);
arc(285,150,175,175,HALF_PI + QUARTER_PI,PI + HALF_PI + QUARTER_PI,PIE);
arc(340,81,130,130,0,PI,PIE);
arc(280,110,130,130,0,PI,PIE);
//highlight
noFill();
stroke('rgb(215,138,132)');
strokeWeight(10);
arc(285,150,175,175,HALF_PI + QUARTER_PI,PI + HALF_PI + QUARTER_PI,OPEN);
arc(340,81,130,130,0 + QUARTER_PI,HALF_PI + QUARTER_PI,OPEN);
//cheek
noStroke();
c = color('rgb(247,204,173)');
fill(c);
circle(405,300,85);
//glasses
noFill();
stroke('rgb(178,79,74)');
strokeWeight(10);
strokeCap(ROUND);
rect(385,255,90,60,15,15,15,15);
rect(260,255,90,60,15,15,15,15);
//nose
stroke('rgb(232,183,141)');
strokeWeight(10);
c = color('rgb(248,212,178)');
fill(c);
bezier(305,210,355,260,250,285,320,310);
//glasses bridge
stroke('rgb(178,79,74)');
strokeWeight(8);
line(305,245,340,245);
//eyes and eyebrows
stroke('black');
strokeWeight(15);
line(350,210,420,210);
line(220,210,290,200);
noStroke();
fill('black');
circle(385,240,15);
circle(275,240,15);
//mouth
c = color('rgb(215,138,132)');
fill(c);
arc(320,330,60,60,0,PI,PIE);
//earring
c = color('rgb(69,89,175)');
fill(c);
circle(472,315,5);
}