Pookkalam by Govind V R

Code

c = circle(r=150,fill="#141436")
c1 = circle(r=100,fill="#c7950a",stroke="none")
c2 = circle(r=110,fill="#e4f7e5",stroke="none")
c3 = circle(r=120,fill="gold",stroke="none")
c4 = circle(r=130,fill="#c44311",stroke="none")
c5 = circle(r=140,fill="#5f0937",stroke="none")

outer= combine([c,c5,c4,c3,c2,c1])
show(outer)

def outcir():
    c = circle(x=80,r= 20,fill="#244a26") + circle(x=74,r=14,fill="gold") + circle(x=70,r=9,fill="#244a26")
    c = c| repeat(6, rotate(60))
    return c 

def square(color, side):
    s = rectangle(w=side, h=side, fill=color, stroke='none')
    return s

def donut(inner,outer):
    shape = circle(r=20,fill=outer) + circle(r=13,fill= inner)
    shape = shape | translate(y=20) 
    shape += shape | translate(y=-40)
    return shape

def petals(color,rot):
    shape = ellipse(x=20,h=18,w=30,fill=color)+ellipse(x=-20,h=18,w=30,fill=color) | rotate(rot)
    return shape

d1 = donut("#c44311","#5b45b5") | rotate(0)
d2 = donut("orange","#0c7813") | rotate(60)
d3 = donut("#f4ff59","#c82e84") | rotate(120)
donut_petals = combine([d1,d2,d3])

petal = petals("#ba4385",120) + petals("#8f1739",60) +petals("#914ab5",0)
midcircle = (circle(r=10,fill="#f4ff59")+circle(r=5,fill="#e4f7e5")) | scale(1.25)

r1 = square(side=75,color='#5f0937') | repeat(3,rotate(30))
r2 = square(side=93,color='#c44311') | rotate(15)| repeat(3,rotate(30))
r3 = square(side=113,color='orange') | repeat(3,rotate(30))
r4 = square(side=138,color='#f4ff59') | rotate(15)| repeat(3,rotate(30))
show(r4)
show(outcir())
show(r3,r2,r1)

mid_pattern = combine([donut_petals,petal,midcircle]) | scale(1.05)
show(mid_pattern)