Within my project, what I wanted to do was to examine what we call faces. What exactly are the processes by which we determine what is a face or not? In such, I attempted to use the most chaotic combinations by randomizing virtually every color combination on screen possible.
sketch
var eyeSize = 20;
var faceWidth = 100;
var faceHeight = 150;
var x = 1;
var y = 255;
var z = 2;
var mouth = 1
var hair = 1
function setup() {
createCanvas(300, 300);
}
function draw() {
strokeWeight(3);
stroke(y,x,z);
fill(x,y,z);
background(y - 100, x + 30, z + 5);
ellipse(width / 2, height / 2, faceWidth, faceHeight);
var eyeLX = width / 2 - faceWidth * 0.25;
var eyeRX = width / 2 + faceWidth * 0.25;
fill(x - 80, y - 80, z - 80);
ellipse(eyeLX, height / 2, eyeSize, eyeSize);
ellipse(eyeRX, height / 2, eyeSize, eyeSize);
if (mouth == 1) {
//happy mouth
arc(width / 2, (height / 2) + 25, faceWidth - 40, faceHeight / 2, 0, radians(180));
}
if (mouth == 2) {
//sad face
noFill();
arc(width / 2, (height / 2) + 50, faceWidth - 40, faceHeight / 2, radians(180), 0);
}
if (mouth == 3) {
//shocked mouth
fill(255,102,102);
ellipse(width / 2, (height / 2) + 50, faceHeight / 2, faceWidth / 2);
}
if (hair == 1) {
//party hat
fill(z,x,y);
triangle((width / 2) - (faceWidth / 2), (height / 2) - (faceHeight / 2), width / 2, (height / 4) - 70, (width / 2) + (faceWidth / 2), (height / 2) - (faceHeight / 2));
}
if (hair == 2) {
//beret
fill(0);
ellipse(width / 2, (height / 2) - 70, faceWidth + 20, faceHeight / 2);
}
if (hair == 3) {
//bowl cut
fill(z,y,x + 10);
arc(width / 2, (height / 2) - (faceHeight / 2) + 30, faceHeight - 15,(faceWidth / 2) + 30, radians(180), 0);
rect((width / 2) - (faceWidth / 1.5), (height / 2) - (faceHeight / 2) + 30, faceWidth / 3, faceHeight / 2);
rect((width / 2) + (faceWidth / 3), (height / 2) - (faceHeight / 2) + 30, faceWidth / 3, faceHeight / 2);
}
}
function mousePressed() {
if (mouseIsPressed == true) {
x = random(0,255);
y = random(0,255);
z = random(0,255);
fill(x,y,z);
}
faceWidth = random(75, 150);
faceHeight = random(100, 200);
eyeSize = random(10, 30);
faceColor = random(0,255);
hair += 1;
if (hair > 3) {
hair = 1;
}
mouth += 1;
if (mouth > 3) {
mouth = 1;
}
}