Keishiro Ueki - 30 may 2021

Author:
Thijs
Based on 上木 敬士郎 Keishiro Ueki @ChocoLinkage - 30 may 2021 Setup Scripting Delete(n) Delete(t) Delete(f) Delete(A) Delete(B) #----------------------------------------------- # Objects #----------------------------------------------- n = 9 f(t)= t^3*(6*t^2-15*t+10) t = Slider(0,1,0.005, 3, 180, false, true, true) α = f(t) * 120° A = (0,0) B = (2,0) C = (2+cos(α), sin(α)) B1= Reflect(B, Line(A,C)) A1= Dilate(B1, 3, C) D = Midpoint(C ,2*C) E = Dilate(D, 1.5,C) β = Angle(A, 2*C, A1) LA= Zip(Rotate(A, k*β, 2*C), k, 0…(n-1)) LB= Zip(Rotate(B, k*β, 2*C), k, 1…n) LC= Zip(Rotate(C, k*β, 2*C), k, 0…n) LD= Zip(Rotate(D, k*β, 2*C), k, 1…(n-1)) LE= Zip(Rotate(E, k*β, 2*C), k, 2…(n-2)) AB = Segment(A,B) BC = Segment(B,C) LAC1= Zip(Segment(A,C), A,LA, C,Last(LC,n)) LAC2= Zip(Segment(A,C), A,Last(LA,n-1), C,First(LC,n-1)) BCn = Segment(Element(LB, n), Element(LC, n)) LCD1= Zip(Segment(C, D), C,First(LC, n-1), D,LD) LCD2= Zip(Segment(C, D), C,Last( LC, n-1), D,LD) LDE1= Zip(Segment(D, E), D,First(LD, n-3), E,LE) LDE2= Zip(Segment(D, E), D,Last( LD, n-3), E,LE) #----------------------------------------------- # Settings #----------------------------------------------- Lobj={"f","t","A","C","B1","A1","D","E","β"} Execute(zip("SetVisibleInView("+obj+", 1, false)", obj,Lobj)) Lobj={"B","AB","BC","BCn"} Execute(zip("ShowLabel("+obj+", false)", obj,Lobj)) Lobj={"B","LA","LB","LC","LD","LE"} Execute(Zip("SetPointSize("+obj+", 4)", obj,Lobj)) Execute(zip("SetDynamicColor("+obj+", 0,0,0)", obj,Lobj)) Execute(zip("SetLayer("+obj+", 1)", obj,Lobj)) Lobj={"AB","BC","LAC1","LAC2","BCn"} Execute(zip("SetDynamicColor("+obj+", 1,0,0)", obj,Lobj)) SetColor(LCD1,"DarkGreen") SetColor(LCD2,"DarkGreen") SetColor(LDE1,"Blue") SetColor(LDE2,"Blue") Lobj={"AB","BC","LAC1","LAC2","BCn","LCD1","LCD2","LDE1","LDE2"} Execute(zip("SetLayer("+obj+", 0)", obj,Lobj)) Delete(Lobj) ShowGrid( false ) ShowAxes( false ) CenterView((5,2)) StartAnimation[t,true]