Icosahedron in cube
Sándor Kabai
An icosahedron is placed in a cube so that its six edges lay on the faces of the cube. Then a tetrahedron is placed in the cube so that its edges are on the diagonals of the cube. When the size of tetrahedron is increased by the golden ratio, then the four faces of the icosahedron coincide with the tetrahedron faces. The edges of icosahedron point in the direction of the vertices of the tetrahedron. The ration of the edges: Sqrt[2] GoldenRatio^2 =3.70246. The icosahedron can be placed in two different positions.
An icosahedron is placed in a cube so that its six edges lay on the faces of the cube. Then a tetrahedron is placed in the cube so that its edges are on the diagonals of the cube. When the size of tetrahedron is increased by the golden ratio, then the four faces of the icosahedron coincide with the tetrahedron faces. The edges of icosahedron point in the direction of the vertices of the tetrahedron. The ration of the edges: Sqrt[2] GoldenRatio^2 =3.70246. The icosahedron can be placed in two different positions.
In[]:=
ManipulateModule{},fi=1.618;alf=ArcTan[fi];bet=ArcTan[1/fi];bet1=ArcTan[1/fi^2];vA1={0.5,0,0.5/fi};vB1={0,-0.5/fi,0.5};vC1={0.5/fi,-0.5,0};vD1={0.5+0.5(fi-1),0.5fi,0.5/fi+0.5};vE1={-0.5fi,-0.5fi,0.5/fi+0.5};vF1={0.5fi,-0.5fi,-0.5/fi-0.5};AD=Line[{vA1,vD1}];BE=Line[{vB1,vE1}];CF=Line[{vC1,vF1}];gline={AD,BE,CF};ico=GraphicsComplex[PolyhedronData["Icosahedron","VertexCoordinates"],Polygon[PolyhedronData["Icosahedron","FaceIndices"]]];icoc1={Rotate[Scale[Rotate[ico,alf,{0,1,0}],1/fi{1,1,1}],0,{0,0,1}]};icoc2={Red,Rotate[icoc1,Pi/2,{0,0,1}]};(*cub*)cvA={-1/2,-1/2,0};cvB={1/2,-1/2,0};cvC={1/2,1/2,0};cvD={-1/2,1/2,0};cs1={cvA,cvB,cvC,cvD,cvA};cs2=cubperf{cvA,cvB,cvC,cvD,cvA};k0={FaceForm[Blue,Red],Polygon[Join[cs1->cs2]]};k4=Table[Rotate[Rotate[Translate[k0,{-1,0,0}],Pi/2,{0,1,0},{-1/2,0,0}],i2Pi/4,{0,0,1}],{i,4}];kt=Translate[k0,{0,0,1}];cuba=Translate[{k0,k4,kt},{0,0,-1/2}];pcub=Rotate[Scale[Rotate[cuba,Pi/4,{0,0,1}],1/Sqrt[2]],ArcTan[Sqrt[2]],{0,1,0}];(*tet*)u=0.5Sqrt[3]3;vE={-u,-0.5,0};vF={2u,0,0};vG={-u,0.5,0};q1={vE,vF,vG,vE};q2=tetperf{vE,vF,vG,vE};tri1=TranslatePolygon[Join[q1->q2]],0,0,;tri2=TableRotateRotateTranslate[Rotate[tri1,Pi,{0,0,1}],{-2u,0,0}],(Pi/2+ArcSin[1/3]),{0,1,0},-u,0,,i2Pi3,{0,0,1},{i,3};ptet={RGBColor[0.5,1,1],tri1,tri2};tetn=Rotate[Rotate[Scale[ptet,growSqrt[2]{1,1,1},{0,0,0}],-ArcTan[Sqrt[2]],{0,1,0}],Pi/4,{0,0,1}];Graphics3D[{If[cubs,cuba,{}],If[tets,tetn,{}],If[ico2s,icoc2,{}],Yellow,If[ico1s,icoc1,{}]},SphericalRegionTrue,ImageSize400,BoxedFalse,ViewPoint{1,-3,1},ViewAngle0.35,PlotRange1],{{ico1s,True,"icosahedron 1"},{True,False}},{{cubperf,0.9,"perf cube"},0,0.9},{{ico2s,False,"icosahedron 2"},{True,False},ImageSize->Tiny,ControlPlacementLeft},{{tets,True,"tet"},{True,False},ImageSize->Tiny,ControlPlacementLeft},{{grow,1,"grow tet"},1,1.618,ImageSize->Tiny,ControlPlacementLeft},{{cubs,True,"cube"},{True,False},ImageSize->Tiny,ControlPlacementLeft},{{tetperf,0,"perf tet"},0,0.9,ImageSize->Tiny,ControlPlacementLeft},TrackedSymbols{ico1s,cubperf,ico2s,tets,grow,cubs,tetperf}
-1
2
6
-1
2
6
Out[]=

