Pookkalam by Hafeesa Hashim V

Code

#outerlayer

c = circle(r=150,fill='#190019',stroke="none")
show(c)

def square(colour,side):
    return rectangle(w=side,h=side,fill=colour,stroke='none')
mlayer = square(side=212.5,colour='#660000') | repeat(10,rotate(10))
dmlayer = square(side=212.5,colour='#800000') | repeat(4,rotate(20))
olayer = square(side=196,colour='#fd6002') |rotate(5) | repeat(10,rotate(10))
ylayer = square(side=182,colour='#eafe24') | repeat(10,rotate(10))
lylayer = square(side=182,colour='#edbb0a') | repeat(4,rotate(20))
lllayer = square(side=169.5,colour='#f4ff59') | rotate(5) | repeat(10,rotate(10))
wlayer = square(side=154,colour='#ffffff') | repeat(10,rotate(10))
show(mlayer,dmlayer,olayer,ylayer,lylayer,lllayer,wlayer)

#mid layer

c1=circle(r=98,fill='#190019',stroke="none")
show(c1)

r1=rectangle(w=96,h=166,fill='#ffffff',stroke="none")|rotate(-45)
show(r1)
r2=rectangle(w=96,h=166,fill='#ffffff',stroke="none")|rotate(45)
show(r2)
r3=rectangle(w=138,h=138,fill='#ffffff',stroke="none")|rotate(45)
show(r3)

r4=rectangle(w=96,h=166,fill='#660000',stroke="none")
show(r4)
r4=rectangle(w=166,h=96,fill='#660000',stroke="none")
show(r4)
r5=rectangle(w=138,h=138,fill='#660000',stroke="none")
show(r5)
c2=circle(r=84,fill='#ffff00',stroke='#008000',stroke_width=4)
show(c2)
r6=rectangle(w=138,h=96,fill='#ffffff',stroke="none")|rotate(45)
show(r6)
r6=rectangle(w=138,h=96,fill='#ffffff',stroke="none")|rotate(-45)
show(r6)
r7=rectangle(w=138,h=96,fill='#660000',stroke="none")
show(r7)
r8=rectangle(w=96,h=138,fill='#660000',stroke="none")
show(r8)
c3=circle(r=69.5,fill='#ffff00',stroke='#008000',stroke_width=4)
show(c3)
r9=rectangle(w=96,h=96,fill='#660000',stroke="none")
show(r9)
r10=rectangle(w=96,h=96,fill='#ffffff',stroke="none")|rotate(45)
show(r10)

#inner layer

c4=circle(r=49,fill='#008000',stroke="none")
show(c4)
c5=circle(r=44,fill='#190019',stroke="none")
show(c5)
e = ellipse(w=20,h=40,x=0,y=24,stroke="none",fill='#fd6002')
petals1 = e | repeat(18,rotate(160))
e1 = ellipse(w=10,h=36,x=0,y=12,stroke="none",fill='#ffff00')
petals2 = e1 | repeat(18,rotate(40))
show(petals1,petals2)

c6=circle(r=12,fill='#190019',stroke='#ff6600')
show(c6)
c7=circle(r=2,fill='#ffffff',stroke="none")
show(c7)