Folding truncated icosahedron
Sándor Kabai
A truncated icosahedron is prepared by folding two identical parts.
A truncated icosahedron is prepared by folding two identical parts.
In[]:=
Manipulate[Module[{tico,ϕ,α,β,β1,d5,w5,p5,d6,m,n,h5,h6,p6,δ,ang56,ang66,p51,p61,r1,r2,t1,t2,bar,sp},tico={RGBColor[0,1,1],Scale[Rotate[PolyhedronData["TruncatedIcosahedron","Faces"],Pi/2,{0,0,1}],0.999{1,1,1},{0,0,0}]};ϕ=GoldenRatio;α=ArcTan[1.618];β=ArcTan[0.618];β1=ArcTan[0.618^2];d5=0.5/Sin[2Pi/10];w5=d5/Cos[2Pi/20];p5={Yellow,Polygon[Table[d5{Sin[x2Pi/5],Cos[x2Pi/5],0},{x,5}]]};d6=0.5/Sin[2Pi/12];m=0.5/Tan[2Pi/12];n=0.5/Tan[2Pi/10];h5=Sqrt[1+ϕ^2]+ϕSin[β]/2;h6=Sqrt[(2ϕ+1)^2+ϕ^2]/2;p6={RGBColor[0.7,0.7,0.6],Polygon[Table[d6{Sin[x2Pi/6+Pi/6],Cos[x2Pi/6+Pi/6],0},{x,6}]]};δ=Pi/2-β1;ang56=α-β1;ang66=Pi-2δ;p51=Translate[Rotate[Translate[Rotate[p5,Pi,{0,0,1}],{0,-n,0}],foldang56,{1,0,0}],{0,-n-2m,0}];p61=Translate[{p6},{0,-m-n,0}];r1=Translate[Rotate[{p51,p61},foldang66,{1,0,0},{0,-n,0}],{0,-2m,0}];r2=Rotate[{r1,p61},foldang56,{1,0,0},{0,-n,0}];t1=Table[Rotate[{p5,r2},i2Pi/5,{0,0,1}],{i,5}];t2=Translate[Rotate[t1,Pi,{1,0,0}],{0,0,-2h5fold}];bar={Red,Cylinder[{{0,0,0},{0,0,-2h5fold}},0.4]};sp=Sphere[{0,0,0},0.3];Graphics3D[{sp,bar,t1,t2},PlotRange{{-6,6},{-6,6},{-5,1}},SphericalRegionTrue,BoxedFalse,ViewPoint{10,10,5},ViewAngle0.07,ImageSize{420,420}]],{{fold,0.5,"fold up"},0.1,1,Appearance"Labeled"},TrackedSymbols{fold}]