Code
w = 20
h = 10
rect = rectangle(w=300,h=300,fill="#540271",stroke="540271") # fro bg
show(rect)
# spape layers
elps = ellipse(w=w,h=h,x=w/2,fill="#B53EDF",stroke="#B53EDF") | repeat(4, rotate(90))
elps2 = ellipse(w=w,h=h,x=w/2,fill="#DB7FFC",stroke="#DB7FFC") | rotate(45) | repeat(4, rotate(90))
c = circle(r=h / 2,fill="yellow",stroke="yellow")
# for incoming shape
sf = 1
for i in range(5):
vio = combine([elps,elps2,c]) | translate(x = w * 3) | scale(sf)
sf += 0.2
final = vio | repeat(10,rotate(45))
show(final)
# for line
xVal = 40;
yVal = 100
p1 = point(x = -xVal, y = yVal)
p2 = point(x = xVal, y = - yVal)
l = polygon([p1,p2],stroke="#B53EDF") | repeat(4,rotate(45)) | scale(1.5)
show(l)
# center circle
centerColor = "#B53EDF"
circ = circle(r=10,fill=centerColor,stroke=centerColor)
circ1 = circle(r=4, x = 20 , fill="#B53EDF",stroke="#B53EDF")
circ2 = circle(r=6, x = 33 , fill="#B53EDF",stroke="#B53EDF")
circMix = circ1 + circ2
circMix = circMix | repeat(8,rotate(45))
show(circ,circMix)
# for corner circle
circCorner = circle(r=10,fill=centerColor,stroke=centerColor) | translate(x = 52, y = 120) | repeat(10,rotate(45))
show(circCorner)