Google Classroom
GeoGebraGeoGebra Classroom

Impossible triangle animation

Script Setup

#Define points on hexagon and its center #L_1 = Sequence((cos(k), sin(k)), k, 0, 2 pi, pi/3) #SetVisibleInView(L_1, 1, false) #P1 = Element(L_1, 1) #P2 = Element(L_1, 2) #P3 = Element(L_1, 3) #P4 = Element(L_1, 4) #P5 = Element(L_1, 5) #P6 = Element(L_1, 6) Execute(Zip("P"+k+" = (cos(2pi "+k+"/6), sin(2pi "+k+"/6))", k, 1...6)) O = (0, 0) #Define figures A1 = Polygon(O, P4, P3, P2) A2 = Polygon(O, P2, P1, P6) A3 = Polygon(O, P6, P5, P4) #Define points of triangle r = Slider(1, 8, 0.01, 1, 160, false, true, false, false) SetValue(r, 2.66) L_2 = Rotate(Sequence((r * cos(k), r * sin(k)), k, 0, 2π, 2π / 3), -π / 2, (0, 0)) SetVisibleInView(L_2, 1, false) T1 = Element(L_2, 1) T2 = Element(L_2, 2) T3 = Element(L_2, 3) d = Distance(T1, T2) #Define vectors v1 = Vector((0, 0), T3) v2 = Vector((0, 0), ( x(T3) + d/3, y(T3))) v3 = Vector((0, 0), ( x(T3) + 2 * d/3, y(T3))) v4 = Vector(T3, (x(T3) + d/3, y(T3))) t = Slider(0, 1, 0.01, 3, 160, false, true, false, false) #Part 1 #Grey# TA1 = Translate( Translate( A1, v1 ), t * v4 ) TA2 = Translate( Translate( A1, v2 ), t * v4 ) TA3 = Translate( Translate( A1, v3 ), t * v4 ) #Set layer for effect SetLayer( TA1, 4 ) SetLayer( TA2, 4 ) SetLayer( TA3, 2 ) #Light Purple# R1TA1 = Rotate( TA1, 2 * pi / 3, (0,0) ) R1TA2 = Rotate( TA2, 2 * pi / 3, (0,0) ) R1TA3 = Rotate( TA3, 2 * pi / 3, (0,0) ) #Set layer for effect SetLayer( R1TA1, 1 ) SetLayer( R1TA2, 2 ) SetLayer( R1TA3, 2 ) #Purple# R2TA1 = Rotate( TA1, 4 * pi / 3, (0,0) ) R2TA2 = Rotate( TA2, 4 * pi / 3, (0,0) ) R2TA3 = Rotate( TA3, 4 * pi / 3, (0,0) ) #Set layer for effect SetLayer( R2TA1, 2 ) SetLayer( R2TA2, 3 ) SetLayer( R2TA3, 1 ) #Part 2 #Purple# UA1 = Translate( Translate( A2, v1 ), t * v4 ) UA2 = Translate( Translate(A2, v2 ), t * v4 ) UA3 = Translate( Translate( A2, v3 ), t * v4 ) #Set layer for effect SetLayer( UA1, 3 ) SetLayer( UA2, 1 ) SetLayer( UA3, 1 ) #Grey# T1TA1 = Rotate( UA1, 2 * pi / 3, (0,0) ) T1TA2 = Rotate( UA2, 2 * pi / 3, (0,0) ) T1TA3 = Rotate( UA3, 2 * pi / 3, (0,0) ) #Set layer for effect SetLayer( T1TA1, 1 ) SetLayer( T1TA2, 1 ) SetLayer( T1TA3, 2 ) #Light Purple# T2TA1 = Rotate( UA1, 4 * pi / 3, (0,0) ) T2TA2 = Rotate( UA2, 4 * pi / 3, (0,0) ) T2TA3 = Rotate( UA3, 4 * pi / 3, (0,0) ) #Set layer for effect SetLayer( T2TA1, 2 ) SetLayer( T2TA2, 0 ) SetLayer( T2TA3, 0 ) #Part 3 #Light Purple# VA1 = Translate( Translate( A3, v1 ), t * v4 ) VA2 = Translate( Translate( A3, v2 ), t * v4 ) VA3 = Translate( Translate( A3, v3 ), t * v4 ) #Set layer for effect SetLayer( VA1, 3 ) SetLayer( VA2, 4 ) SetLayer( VA3, 1 ) #Purple# U1TA1 = Rotate( VA1, 2 * pi / 3, (0,0) ) U1TA2 = Rotate( VA2, 2 * pi / 3, (0,0) ) U1TA3 = Rotate( VA3, 2 * pi / 3, (0,0) ) #Set layer for effect SetLayer( U1TA1, 3 ) SetLayer( U1TA2, 1 ) SetLayer( U1TA3, 2 ) #Grey# U2TA1 = Rotate( VA1, 4 * pi / 3, (0,0) ) U2TA2 = Rotate( VA2, 4 * pi / 3, (0,0) ) U2TA3 = Rotate( VA3, 4 * pi / 3, (0,0) ) #Set layer for effect SetLayer( U2TA1, 5 ) SetLayer( U2TA2, 2 ) SetLayer( U2TA3, 0 )