Pookkalam by Anna S Antony

Code

#outer_design
c1 = circle(r=145,fill="green",stroke="white")
c2 = rectangle(w=200,h=200,fill="#9F1B1B",stroke="none") | rotate(16) | repeat(10, rotate(10))
c3 = rectangle(w=188,h=188,fill="#FF6600",stroke="none") | rotate(22) | repeat(10, rotate(10))
c4 = rectangle(w=176,h=176,fill="#FFDD00",stroke="none") | rotate(28) | repeat(10, rotate(10))
c5 = rectangle(w=160,h=160,fill="white",stroke="none") | rotate(34) | repeat(10, rotate(10))
C= combine([c1,c2,c3,c4,c5])
#kathakali 
r = rectangle(x=35,y=0,w=70,h=140,fill="#EC9A17",stroke="white")
r1 = ellipse(x=-20,y=-8,w=80,h=95,fill="white" ) | rotate(90)
r2 = ellipse(x=-20,y=-9,w=60,h=75,fill="green" , stroke="none")| rotate(90)
r3 = ellipse(x=18,y=4,w=50,h=75,fill="green" , stroke="none")| rotate(90)
r4 = ellipse(x=13,y=20,w=20,h=10,fill="white" , stroke_width=3, stroke="black")
r5 = ellipse(x=13,y=20,w=10,h=8,fill="black" )
r6 = rectangle(x=8,y=32,w=17,h=3,fill="black")
r7 = ellipse(x=0,y=60,w=70,h=19,fill="#C5283D",stroke="black")
r8 = line(x1=0,y1=10,x2=7,y2=-10,stroke_width=2)
r9 = line(x1=7,y1=-10,x2=0,y2=-10,stroke_width=2)
r10 = rectangle(x=0,y=43,w=25,h=15,fill = "red",stroke= "none")
r11 = circle(x=0,y=43,r=4,fill="black")  
r12 = rectangle(x=0,y=49,w=17,h=3,fill="white",stroke="none")
r13 = rectangle(x=0,y=55,w=49,h=6,fill="#5C1A1B",stroke_width=2 ,stroke="black") 
r14 = rectangle(x=0,y=62,w=49,h=6,fill="#5C1A1B",stroke_width=2 ,stroke="black") 
r15 = circle(x=27,y=40,r=12,fill = "yellow",stroke="none")
r16 = circle(x=27,y=40,r=5,fill = "#FF3A20",stroke="none")
show(C,r,r1,r2,r3,r4,r5,r6,r7,r8,r9,r10,r11,r12,r13,r14,r15,r16)
i1 = point(x=0,y=-24)
i2 = point(x=10,y=-22)
i3 = point(x=28,y=-26)
i4 = point(x=12,y=-32)
i5 = point(x=0,y=-32)
I1 = circle(x=30,y=-24,r=4,fill="red")
I2 = polygon([i1,i2,i3,i4,i5], fill = "red")
#left_part
c1 = rectangle(x=-35,y=19,w=70,h=100,fill="yellow",stroke="none") 
c2 = rectangle(x=-35,y=-53,w=70,h=55,fill="white",stroke="none")
c3 = circle(x=-39,y=39,r=8,fill="#FF674D",stroke="none")
c4 = circle(x=-14,y=22,r=5,fill="#402A2C",stoke="none")
c5 = (combine([circle(r=70+i,stroke="black") for i in range(5)]))
c6 = (combine([circle(r=76+i,stroke="white") for i in range(23)]))
show(I1,I2,c1,c2,c3,c4,c5,c6)
#boat
p1 = point(x=0,y=-25)
p2 = point(x=-40,y=-25)
p3 = point(x=-60,y=0)
p4 = point(x=-35,y=-9)
p5 = point(x=0,y=-9)
P = polygon([p1,p2,p3,p4,p5], fill = "#33261D")
#human
H = rectangle(x=-15,y=2,w=11,h=22,fill="#402A2C",stroke="none")
i1 = point(x=-11,y=12)
i2 = point(x=-12,y=20)
i3 = point(x=-10,y=26)
i4 = point(x=-12,y=26)
i5 = point(x=-14,y=24)
i6 = point(x=-19,y=12)
I = polygon([i1,i2,i3,i4,i5,i6],fill="#402A2C",stroke="none")
W = (combine([line(x1=-18+i,y1=10+i,x2=-32+i,y2=10+i,stroke="black") for i in range(4)]))
T = rectangle(x=-31,y=9,w=4,h=35,fill="#301014",stroke="#301014")
#flower
petal = ellipse(x=0,y=10,w=10,h=20,fill="red",stroke="black")
flower= petal | repeat(18,rotate(30))
flower_link = flower | translate(x=82,y=40) | repeat (40,rotate(30))
A = flower_link
My_Pookalam = combine([P,H,I,W,T,A])
show(My_Pookalam)