Script
S = 26
s = 20
sp = 1
T = Slider(0, 2 pi, 0.01, sp, 150, false, true, false, false)
FX(x) = 10 sin(2(x + s T)) x / (3 S)
FY(x) = ( 20 cos(x + s T) + 2 cos(3(x + s T)) ) x / (3 S)
C = Curve( (100 + FY(S * t)) cos(t + T) - FX(S * t) sin(t + T), (100 + FY(S * t)) sin(t + T) + FX(S * t) cos(t + T), t, 0, 3/4 2 pi)
n = 700
Ln = Zip( C(3/4 2 pi / n * k), k, 1..n )
Lname = Zip( "C"+Text(k), k, 1..n)
Execute( Zip( name +" =Segment(Element(Ln, "+k+"), Element(Ln, "+(k+1)+"))", k, 1..(n-1), name, Lname ) )
#------------------------------
# Settings
#------------------------------
map(v, x, y, z, w) = z + (v - x) * (w- z) / (y - x);
Execute(Zip("ShowLabel("+name+", false)", name, Lname))
Execute(Zip("SetLineThickness("+name+", floor(map("+k+" / n, 1/n, 1, 1, 12)))", k, 1..n, name, Lname))
#Execute(Zip("SetFilling("+name+", 100)", name, Lname))
Execute(Zip("SetDynamicColor("+name+", "+k+" / n, 1, 1, 1)", k, 1..n, name, Lname))
SetBackgroundColor( "Black" )
ShowAxes(1, false)
ShowGrid(1, false)
CenterView((0, 0))