Pookkalam by Anjali Rajendran

Code

p3=color(r=34,g=73,b=69,a=1)
p2=color(r=170,g=255,b=247,a=1)
b1 = rectangle(w=295, h=295,fill=p3,stroke=p2,stroke_width=4)
c1=circle(r=150,fill="darkblue")
c2=circle(r=140,fill="black")
s1 = rectangle(w=200, h=200,fill="darkorange",stroke="none") | repeat(9, rotate(80))
s2 = circle(x=125, y=0, r=8,stroke="none",fill="gold") | repeat(36, rotate(10))
c3=circle(r=125,fill="red",stroke="none")
p1=color(r=16,g=53,b=12,a=2)
s3 = rectangle(w=170, h=170,fill=p1,stroke="none") | repeat(9, rotate(80))
s4=circle(x=112, y=0, r=5,stroke="none",fill="gold") | repeat(36, rotate(10))
c4=circle(r=110,fill="darkblue",stroke="none")
s5 = rectangle(w=150, h=150,fill="blue",stroke="none") | repeat(9, rotate(80))
c5=circle(r=98,fill="purple",stroke="red",stroke_width="2")
s6 = circle(x=85, y=0, r=8,stroke="red",stroke_width=2) | repeat(18, rotate(20))
s7 = rectangle(w=120, h=120,fill="red",stroke="none") | repeat(9, rotate(80))
c6=circle(r=75,fill=p1,stroke="none")
s8 = circle(x=65, y=0, r=7,stroke="none",fill="magenta") | repeat(18, rotate(20))
s9 = circle(x=65, y=0, r=4,stroke="none",fill="white") | repeat(18, rotate(20))
p4=color(r=13,g=231,b=210,a=1)
c7=circle(r=60,stroke="none",fill=p4)
s10 = rectangle(w=85, h=85) | repeat(9, rotate(10))
s11 = circle(x=30, y=0, r=4,stroke="none",fill="black") | repeat(8, rotate(45))
import math
s12 = []
theta = 360/8
s12 = ellipse(w=30, h=20) | translate(x=20, y=0) | repeat(8, rotate(theta))
p2=color(r=170,g=255,b=247,a=1)
c8=circle(r=25,fill=p2)
c9=circle(r=15,fill="black")
s13 = circle(x=10, y=0, r=10,stroke="white") | repeat(6, rotate(60))
s14 = circle(x=20, y=0, r=1,stroke="none",fill="black") | repeat(13, rotate(55))
c10= circle(r=8,fill="white",stroke="none")
c11= circle(r=5,fill="black",stroke="none")
show(b1,c1,c2,s1,s2,c3,s3,s4,c4,s5,c5,s6,s7,c6,s8,s9,c7,s10,s11,s12,c8,c9,s13,s14,c10,c11)
def concentric_circles(x, y, r, n):
    step = r/n
    for i in range(n):
        c = circle(x=x, y=y, r=r,fill=p3,stroke=p2,stroke_width=3)
        show(c)
        r = r-step

w, h = 350, 350
r = 100
n = 10
concentric_circles(w/2, h/1.8, r, n)
concentric_circles(w/2, -h/1.8, r, n)
concentric_circles(-w/2, h/1.8, r, n)
concentric_circles(-w/2, -h/1.8, r, n)