[课后作业]基于P5.JS的创意自画像
效果图(可以说是很符合自己了):
实现代码:
function setup()
{
createCanvas(400, 400);
}
function draw()
{
background(220);
fill(255,228,181);
ellipse(200,200,180,200);
fill(0);
arc(200,200,200,220,-PI*0.85,-0.4,CHORD);
//穷
fill(255,228,181);
if(mouseX>250 && mouseY<150)
{
circle(200,175,10);
line(160,185,240,185);
line(160,185,158,198);
line(240,185,236,195);
line(180,195,170,210);
line(220,195,230,210);
bezier(195,210,190,260,180,260,170,270);
line(170,225,230,225);
line(230,225,220,270);
}
//菜
if(mouseX>250 && mouseY>250)
{
line(150,185,250,185);
line(180,175,180,195);
line(220,175,220,195);
line(240,197,160,205);
line(235,201,223,223);
line(198,208,205,221);
line(175,210,182,223);
line(155,226,245,226);
line(200,222,200,280);
line(200,226,160,275);
line(200,226,240,275);
}
//宅
if(mouseX<150 && mouseY>250)
{
circle(200,175,10);
line(160,185,240,185);
line(160,185,158,198);
line(240,185,236,195);
line(230,195,165,205);
line(160,225,237,220);
line(196,201,196,260);
line(196,260,235,260);
line(235,260,235,253);
}
//帅
if(mouseX<150 && mouseY<150)
{
line(170,190,170,240);
bezier(185,175,185,260,185,260,170,260);
line(200,193,200,248);
line(215,175,215,270);
line(230,193,230,248);
line(200,193,230,193);
}
//真脸
if(mouseX>150 && mouseX<250 && mouseY>150 && mouseY<250)
{
fill(180,226,230);
rect(207,185,40,30,5);
rect(153,185,40,30,5);
line(110,200,153,200);
line(247,200,290,200);
line(207,200,193,200);
fill(255,65,65);
triangle(215, 245, 190, 260,210,260);
}