Pookkalam by vishnudas9567

Code

#pookalam

cir1=circle(r=150,stroke = "black",stroke_width=3)
cir2=circle(r=145,fill="black")
cir3=circle(r=90,fill="white",stroke="black",stroke_width=3)
elli1=ellipse(h=287,w=64,fill="red",stroke="none")|repeat(20,rotate(20))
elli2=ellipse(h=250,w=35,fill="Yellow",stroke="none")|rotate(25)
elli3=elli2|repeat(20,rotate(20))
elli4=ellipse(h=250,w=35,fill="orange",stroke="none")|rotate(15)
elli5=elli4|repeat(20,rotate(20))


#git logo

#git logo

# ON pookalam

#base face

base=rectangle(w=190,h=120,fill="#1c1a1a",stroke="none")
left=ellipse(x=75,y=0,w=90,h=150,fill="#1c1a1a",stroke="none")
up=ellipse(x=0,y=65,w=200,h=70,fill="#1c1a1a",stroke="none")
right=left | scale(-1)
down=up|scale(-1)

Base_face=combine([base,left,right,up,down])  #BASE_FACE



#ears
e1=ellipse(x=10,y=120,w=30,h=60,fill="#1c1a1a",stroke="none")
ear1=e1|rotate(-30)

p1 = point(x=85, y=130)#ear sharp edge
p2 = point(x=86, y=100)
p3 = point(x=53, y=103)

shape = polygon([p1, p2, p3],fill="#1c1a1a",stroke="none")
right_ear=combine([shape,ear1])
left_ear=right_ear|rotate(70)
ears=combine([right_ear,left_ear])  #EARS

#face
cheek=rectangle(x=0,y=-20,w=130,h=60,fill="#FFDBAC",stroke="none")
left_cheek=ellipse(x=60,y=-20,w=30,h=59,fill="#FFDBAC",stroke="none")
right_cheek=ellipse(x=-60,y=-20,w=30,h=59,fill="#FFDBAC",stroke="none")
up_cheek=ellipse(x=0,y=3,w=140,h=30,fill="#FFDBAC",stroke="none")

#eyes
c2 = color(r=204, g=53, b=53, a=0.7)
l_t=ellipse(w=30,h=20,fill="white",stroke="none")
pp=ellipse(w=15,h=7,fill=c2,stroke="none")
dot=ellipse(w=5,h=4,fill="white",stroke="none")
right_eye_base=l_t | rotate(90) |translate(x=50,y=-10)
left_eye_base=l_t | rotate(90) |translate(x=-50,y=-10)
left_pupil=pp |rotate(90) | translate(x=-50, y=-11)
right_pupil=pp |rotate(90) | translate(x=50, y=-11)
pupil_dot1=dot|translate(x=48,y=-9)
pupil_dot2=dot|translate(x=-52,y=-9)

#nose
c1 = color(r=204, g=53, b=53, a=0.7)
nose=circle(x=0,y=-20,r=5,fill=c1,stroke="none")

#mouth
m=circle(x=0,y=-30,r=8,fill=c1,stroke="none")
cover=circle(x=0,y=-26,r=8,fill="#FFDBAC",stroke="none")

#midface combine
midface=combine([cheek,left_cheek,right_cheek,up_cheek,left_eye_base,right_eye_base,left_pupil,right_pupil,pupil_dot1,pupil_dot2,m,cover,nose]) #MID FACE

#mustache
m1 = line(x1=75, y1=0, x2=120, y2=5,stroke="#1c1a1a",stroke_width=2)
m2 = line(x1=75, y1=-13, x2=120, y2=-20,stroke="#1c1a1a",stroke_width=2)
m3 = line(x1=-75, y1=0, x2=-120, y2=5,stroke="#1c1a1a",stroke_width=2)
m4 = line(x1=-75, y1=-13, x2=-120, y2=-20,stroke="#1c1a1a",stroke_width=2)

mustache=combine([m1,m2,m3,m4])

fac=combine([Base_face,ears,midface])
face=fac |scale(.7)


#Body
down_body=rectangle(x=0,y=-122,w=80,h=80,fill="#1c1a1a",stroke="none")
neck=ellipse(x=0,y=-80,w=80,h=50,fill="#1c1a1a",stroke="none")

body=combine([down_body,neck])


#tail
tail1=ellipse(x=-30,y=-120,w=80,h=40,fill="#1c1a1a",stroke="none") |rotate(-30)
tail2=ellipse(x=-30,y=-100,w=80,h=40,fill="white",stroke="none") |rotate(-30)

tail=combine([tail1,tail2])
#background
background=rectangle(w=300,h=300,fill="white",stroke="none")

#image
image=combine([tail,face,mustache,body])



pic=image|scale(.5)


show(cir1,cir2,elli1,elli3,elli5,cir3,pic)