Pookkalam by Jinshad

Code

orangemarigold="#fc9802"
redrose="#a60202"
yellowmarigold="#fceb02"
hibiscus="#ce0606"
orchid="#53007b"
lotusrose="#de4573"
c3=circle(r=150,fill="#025e10", stroke="none") 
c2=circle(r=146,fill="#025e10",stroke="none")
c1=circle(r=143,fill=redrose,stroke="none")
show(c3,c2,c1)

c3=circle(x=70,y=0,r=40,fill=redrose,stroke="none")|repeat(10,rotate(36))
r3=rectangle(w=175,h=175,fill=yellowmarigold,stroke="none")|repeat(20,rotate(50))
r4=rectangle(w=200,h=200,fill=orangemarigold,stroke="none")|rotate(10)|repeat(20,rotate(50))|scale(0.98)
show(r4,r3,c3)

e3=ellipse(w=180,h=80,fill=orangemarigold,stroke="none")|repeat(10,rotate(36))
show(e3)

c2=circle(r=70,fill="green",stroke="none")
c1=circle(r=65,fill=orchid,stroke="none")
show(c2,c1)

co=circle(r=100,y=25,fill="#B53427")
ci1=circle(r=80,y=25,fill="#428140")
ci2=circle(r=50,y=25,fill="white")
ci3=circle(r=35,y=25,fill="orange")

chin=ellipse(w=150,h=60,x=0,y=-70,fill="white")

face=ellipse(w=80,h=110,fill="#3D783F",y=-40,stroke="none")

redell=ellipse(w=80,h=60,y=-30,fill="#E74530",stroke="none")
greenell=ellipse(w=80,h=50,y=-40,fill="#3D783F",stroke="none")

pottpoints=[point(x=0,y=-30),point(x=-25,y=-17.5),point(x=0,y=-22.5),point(x=25,y=-17.5)]
pott=polygon(pottpoints,fill="#F6E358",stroke="none")

fillr=polygon([point(x=-25,y=-17.5),point(x=0,y=-22.5),point(x=25,y=-17.5),point(x=0,y=-5)],fill="#E74530",stroke="none")

eyebro=ellipse(w=7,h=30,fill="black") 

eyeb1=eyebro| rotate(65) |translate(y=-30,x=-17)
eyeb2=eyebro| rotate(-65) |translate(y=-30,x=17)

fbro1=polygon([point(y=-35,x=-39),point(y=-25,x=-31),point(y=-30,x=-25)],fill="black")
fbro2=polygon([point(y=-35,x=39),point(y=-25,x=31),point(y=-30,x=25)],fill="black")

eye1=(ellipse(w=30,h=10,fill="black") + ellipse(w=18,h=7,fill="white") +circle(r=3,fill="gray",stroke="none") ) | translate(x=-20,y=-45)
eye2=(ellipse(w=30,h=10,fill="black") + ellipse(w=18,h=7,fill="white") +circle(r=3,fill="gray",stroke="none") ) | translate(x=20,y=-45)

mouth=ellipse(w=30,h=10,fill="red") | translate(x=0,y=-75)

katha = combine([co,ci1,ci2,ci3,chin,face,redell,greenell,pott,fillr,eyeb1,eyeb2,fbro1,fbro2,eye1,eye2,mouth])
kathak = katha | scale(0.5) | translate(x=0, y=-5)
show(kathak)