Google Classroom
GeoGebraGeoGebra Classroom

Nex63 (6,3) - Struts

Setup #========================================================== # Show half Nexorade Nex63 (6,3) with extendable structs #---------------------------------------------------------- # Needed : LsFree strut-points : list dimension (5,2) #========================================================== LsFree={{(0.9028227, 0.429203232, -0.026377226), (0.777630478, 0.53287731, 0.333665419)}, {(0.723217347, 0.686653164, 0.073919557), (0.777455833, 0.436082585, 0.453204597)}, {(0.759407269, 0.617064763, 0.206232097), (0.460247935, 0.684987742, 0.564768653)}, {(0.575285318, 0.679245108, 0.455711406), (0.850363088, 0.296424652, 0.434758605)}, {(0.917209785, 0.265881844, 0.296703648), (0.656412626, 0.335188432, 0.675848488)}} #========================================================== # Sphere and Half sphere (for testing placements of struts) #========================================================== O = (0,0,0) r = Slider(0.96, 1.04, 0.001, 1, 100, false) SetValue(r,0.96) Sph = Sphere(O,r) α = Angle(Line(O,(0,0,1)), Line(O,(1,1,1))) hSph = Rotate(Surface((r;a;b), a,0,360°, b,0°,90°), α,Line(O,(-1,1,0))) #====================================== # Create a list of 30 symmetry matrices #====================================== ζ = Angle(Line((0,0,0),((1+sqrt(5))/2,1,0)),xAxis) SetConditionToShowObject(ζ,false) Mζ = {{cos(ζ),-sin(ζ),0},{sin(ζ),cos(ζ),0},{0,0,1}} Lα = {1,2,3}*72° LA3 = Zip(Mζ*{{1,0,0},{0,cos(α),-sin(α)},{0,sin(α),cos(α)}}*Invert(Mζ),α,Lα) LM3 = {{{1,0,0},{0,1,0},{0,0,1}},{{0,0,1},{1,0,0},{0,1,0}},{{0,1,0},{0,0,1},{1,0,0}}} LM9 = Join(Zip(LM3*M, M, LA3)) LM30= Join(LM3,Join(Zip(LM9*M, M, LM3))) #======================================================== # Show half sphere of extendable structs #======================================================== fact=Slider(1, 1.2, 0.01, 1, 100, false) SetValue(fact,1.1) LR = LsFree(1) LG = LsFree(2) LB = LsFree(3) LC = LsFree(4) LY = LsFree(5) Rseg = Segment(Dilate(LR(1),fact,LR(2)),Dilate(LR(2),fact,LR(1))) Gseg = Segment(Dilate(LG(1),fact,LG(2)),Dilate(LG(2),fact,LG(1))) Bseg = Segment(Dilate(LB(1),fact,LB(2)),Dilate(LB(2),fact,LB(1))) Cseg = Segment(Dilate(LC(1),fact,LC(2)),Dilate(LC(2),fact,LC(1))) Yseg = Segment(Dilate(LY(1),fact,LY(2)),Dilate(LY(2),fact,LY(1))) Rs30 = Zip(ApplyMatrix(M, Rseg), M, LM30) Gs30 = Zip(ApplyMatrix(M, Gseg), M, LM30) Bs30 = Zip(ApplyMatrix(M, Bseg), M, LM30) Cs30 = Zip(ApplyMatrix(M, Cseg), M, LM30) Ys30 = Zip(ApplyMatrix(M, Yseg), M, LM30) #======================================================== # Settings #======================================================== SetActiveView(-1) SetBackgroundColor("#202020") ShowAxes(false) ShowGrid(false) CenterView(O) SetActiveView(1) ShowAxes(false) ShowGrid(false) CenterView(O) #======================================================== # Properties #======================================================== List={"O","α","LR","LG","LB","LC","LY","Rseg","Gseg","Bseg","Cseg","Yseg"} Execute(Zip("SetConditionToShowObject("+obj+",false)", obj,List)) SetColor(Sph,"White") SetColor(hSph,"White") SetFilling(Sph,1) SetFilling(hSph,1) SetLineThickness(hSph,0) onHalf=Checkbox("Half Sphere") SetValue(onHalf,false) SetConditionToShowObject(Sph,!onHalf) SetConditionToShowObject(hSph,onHalf) SetColor(Rs30,"Red") SetColor(Gs30,"Green") SetColor(Bs30,"Blue") SetColor(Cs30,"Cyan") SetColor(Ys30,"Yellow") Setcoords(r,30,40) Setcoords(fact,160,40) Setcoords(onHalf,310,11) Delete(List)