I started this project based on my self portrait and explored the command to change the size of the image both randomly and steadily.
//Sean Meng
//Section B
//hmeng@andrew.cmu.edu
//Assignment1
function setup() {
createCanvas(480, 640);
background(0);
text("p5.js vers 0.7.1 test.", 10, 15);
}
var mouth1=30
var mouth2=5
var glassescolor=0
var BW1=50
var BW2=80
var BW3=10
var BW4=120
var earH=40
function draw() {
fill(255, 255, 255)
rect(0, 0, 300, 600)
//ears
fill(225, 197, 164)
ellipse(380, 330, 20, earH)
strokeWeight(0)
ellipse(220, 330, 20, earH)
//face
strokeWeight(0)
fill(236, 212, 190)
rect(220, 250, 160, 100)
triangle(220, 350, 300, 350, 300, 420)
triangle(220, 350, 240, 390, 300, 420)
quad(300, 420, 300, 350, 380, 350, 340, 400)
//hair
fill(0)
triangle(205, 250, 290, 275, 405, 250)
triangle(205, 250, 230, 220, 300, 220)
triangle(230, 220, 265, 200, 300, 220)
rect(265, 200, 60, 30)
triangle(265, 200, 300, 195, 300, 220)
triangle(205, 250, 300, 220, 300, 250)
rect(370, 240, 10, 70)
//glasses
fill(glassescolor)
ellipse(255, 315, 60, 60)
fill(245, 245, 245)
ellipse(255, 315, 53, 53)
fill(glassescolor)
ellipse(335, 315, 60, 60)
fill(245, 245, 245)
ellipse(335, 315, 53, 53)
strokeWeight(1)
fill(200)
rect(283.5, 309, 22, 3)
rect(219, 309, 7, 3)
rect(364, 309, 16, 3)
//nose
strokeWeight(2)
line(290, 315, 290, 350)
line(290, 350, 300, 350)
//mouth
fill(220, 145, 140)
rect(280, 380, mouth1, mouth2)
//background buildings
strokeWeight(0)
fill(153, 138, 138)
rect(370, 470, BW1, 160)
rect(480, 500, BW2, 100)
rect(395, 440, BW3, 40)
fill(136, 115, 117)
rect(400, 520, BW4, 80)
//backgrounds 2
strokeWeight(12)
triangle(60, 170, 130, 170, 130, 50)
}
function mousePressed(){
//if you click the mouse, the glasses is going to change from black to white.
//if you click the mouse, the mouth and the building in the background are going to be bigger.
//
mouth1 = random(10, 60)
mouth2 = random(1, 20)
glassescolor+=20
BW1+=3
BW2+=3
BW3+=3
BW4+=3
earH = random(20, 80)
}