Pookkalam by Krishna R

Code

c1=circle(r=80,fill="#fc6f03")
c2=circle(r=120,fill="black")
c3=circle(r=150,stroke_width=10,stroke="black",fill="#c20e0e")
c7=circle(r=155,stroke_width=10,stroke="#d66b84")
c8=circle(r=160,stroke_width=10,stroke="black")
c4 = circle(x=50, y=0, r=10,stroke="none",fill="white") | repeat(18, rotate(22.5))
c5=circle(r=60,stroke="none",fill="#fc036f")
c6 = circle(x=135, y=0, r=11,stroke="none",fill="white") | repeat(18, rotate(20))
eb=ellipse(w=70,h=27,stroke="none",fill="#77489c") | translate(y=135) | repeat(20, rotate(20))
e1 = ellipse(w=160,h=90,stroke="none",fill="#fce303") | rotate(0)
e2 = ellipse(w=160,h=90,stroke="none",fill="#03b1fc") |rotate(36)
e3 = ellipse(w=160,h=90,stroke="none",fill="#fce303") | rotate(72)
e4 = ellipse(w=160,h=90,stroke="none",fill="#03b1fc") |  rotate(108)
e5 = ellipse(w=160,h=90,stroke="none",fill="white") | rotate(144)
e8=ellipse(w=30,h=17,x=20,y=0,stroke='black',stroke_width=1,fill="#fcd303") | rotate(22.5)
petal=e8 | repeat(9, rotate(45))
def square(color, side):
    return rectangle(w=side, h=side, fill=color, stroke='none')
s1=square(side=135,color='black') | repeat(15,  rotate(15))
s2=square(side=151.5,color='white') | rotate(22.5)|repeat(3,  rotate(15))
s3=square(side=151.5,color='white') | rotate(67.5)|repeat(3,  rotate(15))
s4=square(side=170,color='#098003') | rotate(30)|repeat(2,  rotate(15))
s5=square(side=170,color='#098003') | rotate(30)|repeat(10,  rotate(15))
show(c8,c7,c3,c2,s5,s4,s3,s2,s1,c1,e5,e4,e3,e2,e1,c5,c4,petal,eb,c6)