heeseoc-Project-01-Face

heeseoc-portrait

//Steph Chun
//15-104 section #A
//heeseoc@andrew.cmu.edu
//Project-01


function setup() {
    createCanvas(600, 600);
}

function draw() {

	//background//
	background(255,255,255);
	fill(191,205,219);
	noStroke();
	ellipse(260,252,420,420);

	//hair//
	fill(0);
	ellipse(200, 200, 100, 70);
	ellipse(158, 230, 80, 50);
	ellipse(160, 290, 70, 50);
	ellipse(125, 265, 50, 50);
	ellipse(285, 200, 130, 100);
	ellipse(350, 210, 70, 50);
	ellipse(355, 235, 100, 45);
	ellipse(360, 270, 100, 60);
	ellipse(345, 305, 70, 40);

	//ear//
	fill(220,190,195);
	ellipse(340,270,40,30);
	fill(80,57,57);
	ellipse(344,268,15,13);
	fill(220,190,195);
	ellipse(342,272,15,13);

	//face shadow//
	fill(236,209,209);
	noStroke();
	ellipse(250,270,180,150);

	//earring//
	noFill();
	stroke(150,150,150);
	strokeWeight(2);
	arc(360, 272, 10, 10, QUARTER_PI*6, PI);

	//face//
	fill(255,233,233);
	noStroke();
	ellipse(240,263,165,145);

	//more hair//
	fill(0);
	ellipse(205,200,60,40);
	ellipse(260,190,60,40);
	ellipse(185,225,50,50);

	//blush//
	fill(249,211,211);
	ellipse(300,280,40,25);
	ellipse(182,280,40,25);

	//eyebrows//
	fill(0);
	rect(181,240,40,8);
	rect(260,240,40,8);
	triangle(310,248,300,240,270,248);

	//eyes//
	fill(255,255,255);
	ellipse(280,265,40,25);
	ellipse(202,265,40,25);

	//pupils//
	fill(175,205,225);
	ellipse(280,265,20,20);
	fill(0);
	ellipse(280,265,10,10);
	fill(175,205,225);
	ellipse(202,265,20,20);
	fill(0);
	ellipse(202,265,10,10);

	//eyelid//
	fill(179,110,110);
	arc(280, 265, 40, 25, HALF_PI*6, PI);
	arc(202, 265, 40, 25, HALF_PI*6, PI);

	//eyeliner//
	fill(80,57,57);
	triangle(260,265,300,265,310,260);
	triangle(222,265,182,265,172,260);

	//hair covering eye//
	fill(0);
	ellipse(170,260,60,60);

	//nose//
	fill(236,200,200);
	triangle(230,287,225,295,245,295);

	//mole//
	fill(80,57,57);
	ellipse(290,235,3,3);

	//lips//
	fill(185,80,80);
	arc(232, 311, 20, 13, PI, 0, OPEN);
	arc(247, 311, 25, 13, PI, 0, OPEN);
	fill(205,84,84);	
	arc(244.5, 311, 30, 20, 0, PI, OPEN);

	//mouse input//
	fill(255,251,97);
	rect(mouseX, mouseY, 20, 1);
	rect(mouseX+9.5, mouseY-14, 1, 30);
	rect(mouseX-4, mouseY+12, 10, 1);
	rect(mouseX+0.5, mouseY+6, 1, 16);	
	rect(mouseX-10, mouseY-12, 14, 1);
	rect(mouseX-4, mouseY-20, 1, 20);	

}

I started off with trying to capture my personal attributes that makes my portrait unique. Then, I sketched out my idea on a piece of paper, and I went right on to coding my piece. While I was coding, because approximating the coordinates was super tedious, I thought I should have planned out the coordinates on my computer in advance. I added a mouse input to give it a little more character and life to my piece.

Leave a Reply