Butterfly

Script

f(x)=1/2 x^2 sin(x) #exp( ί * theta * x)= (cos(theta ))^x + ί (sin(theta ))^x theta = Slider(-0.39, 0.45, 0.01, speed, 140, false, true, false, false) Re(x) = real( ℯ^( ί * theta * x)) * f(x) Im(x) = imaginary(ℯ^( ί * theta * x)) * f(x) a=Slider(-3, 5, 0.1, 1, 140, false, true, false, false) b=Slider(-3, 5, 0.1, 1, 140, false, true, false, false) curve=Curve(t, Re(t), Im(t), t, a, b) c= Plane( xAxis, zAxis ) curve'=Reflect(curve, c) eps = 0.05 Segmts = Sequence(Segment((i, 0, 0), curve(i)), i, a, b, eps) n=Slider(0, 180, 1, 1, 140, false, true, false, false) SetValue(n, 180) Execute(Sequence("A"+i+"=Segment((a+(b-a)*"+i+"/n, 0, 0), curve((a+(b-a)*"+i+"/n)))", i, 1, n)) Execute(Sequence("ShowLabel(A"+i+", false)", i, 1, n)) Execute(Sequence("SetDynamicColor(A"+i+", 0.3, "+i+"/n, 0.87)", i, 1, n)) Execute(Sequence("B"+i+"=Segment((a+(b-a)*"+i+"/n, 0, 0), curve'((a+(b-a)*"+i+"/n)))", i, 1, n)) Execute(Sequence("ShowLabel(B"+i+", false)", i, 1, n)) Execute(Sequence("SetDynamicColor(B"+i+", 0.3, "+i+"/n, 0.87)", i, 1, n)) faces=Slider(0, 4, 1, 1, 100, false, true, false, false) u_1=(1,0,0) u_2=(0,1,0) u_3=(0,0,1) u_4=(1;120°;-20°) listvectordirection={u_1,u_2,u_3,u_4} Selectedvector=Element(listvectordirection, faces)