Pookkalam by Aiswariya R

Code

f1=color(r=100,g=0,b=0)
c1=circle (r=150,fill=f1)
show(c1)

def square(color, side):
    return rectangle(w=side, h=side, fill=color, stroke='none')
def tinkerhub_logo():
    r1 = rectangle(w=105, h=50, fill='#2CC0CF', stroke='none', x=-45, y=70) 
    r2 = rectangle(w=50, h=50, fill='#2078F9', stroke='none', x=50, y=70)
    layer1 = r1 + r2
    layer2 = rectangle(w=175, h=50, fill='#FECD3D', stroke='none', x=-12, y=0) 
    r1 = rectangle(w=70, h=50, fill='#EE3C35', stroke='none', x=-65, y=-70) 
    r2 = rectangle(w=42, h=50, fill='#91BF23', stroke='none', x=0, y=-70) 
    r3 = rectangle(w=42, h=50, fill='#045768', stroke='none', x=52, y=-70) 
    layer_three = r1 + r2 + r3
    return combine([layer1, layer2, layer_three]) | scale(0.08) | translate(x=1)
outer_layer_data = [ {"side":212.5, "color":'#FEFDF3'}, {"side":196, "color":'#F8E63D'}, {"side":182, "color":'#E3BD36'}, {"side":168, "color":'#F36636'}, {"side":155, "color":'#a92822'} ]
outer_layer=[]
# creating outerlayer with outer_layer_data
for i in outer_layer_data:
    if(outer_layer_data.index(i) % 2 == 0 ):
        layer = square(side=i['side'], color=i['color']) | rotate(5) | repeat(10,  rotate(10)) 
    else:
        layer = square(side=i['side'], color=i['color']) | repeat(10,  rotate(10)) 
    outer_layer.append(layer)
show(combine(outer_layer))

middle_c = circle(r=97, fill='#6e962d') # middle circle of pookalam

f3=color(r=50,g=70,b=30)
c2=circle(r=100,fill=f3)
show(c2)

#f4=color(r=50,g=70,b=30)
c3=circle (x=90,y=0,r=10,fill='white')|repeat (24, rotate (15))
show(c3)
cc=circle(x=90,y=0,r=5,fill='brown', stroke="none")|repeat (24, rotate (15))
show(cc)

c4=circle (r=80,fill='orange')
show(c4)

f5=color(r=50,g=0,b=0)
e1=ellipse (h=25,w=140,fill=f5,stroke="none")|repeat (3,rotate(60))
show(e1)
f6=color(r=150,g=0,b=0)
e2=ellipse(h=50,w=155,fill=f6,stroke="none")|rotate(30)
e3=e2|rotate(60)
e4=e2|rotate(120)
show(e2,e3,e4)


cr=circle(r=45,fill=f3,stroke="none")
cr1=circle(r=10,fill='#FEFDF3',stroke="none")
show(cr)

sq=rectangle (w=62,h=62,fill='orange')|repeat(50, rotate (8)|scale(0.92))
show(sq)
show(cr1)

sqq=rectangle (x=0,y=60,h=15,w=15, fill='yellow', stroke='none')|repeat (6, rotate (60))

show(sqq)