Cluster of 92 dodecahedra on a rhombic triacontahedron​
​by Sándor Kabai
92 dodecahedra are arranged along the edges of a rhombic triacontahedron with facial connection. The dodecahedra can be replaces with inscribed rhombic hexecontahedra which meet one another with their vertices.
In[]:=
​​fi=GoldenRatio;alf=ArcTan[fi];bet=ArcTan[1/fi];​​(*rhombictriacontahedron*)​​rtx=Cos[alf];​​rty=Sin[alf];​​rtvA={rtx,0,0};​​rtvB={0,rty,0};​​rtvC={-rtx,0,0};​​rtvD={0,-rty,0};​​rts1={rtvA,rtvB,rtvC,rtvD,rtvA};​​(*herethedegreeofperforationcanbevaried*)​​perf=0.85;​​rts2=perf{rtvA,rtvB,rtvC,rtvD,rtvA};​​r1=Polygon[rts1->rts2];​​r2=Translate[r1,{0,0,firty}];​​r3=Translate[r1,{0,0,-firty}];​​r4=Rotate[Rotate[{r2,r3},Pi/2,{1,0,0}],Pi/2,{0,1,0}];​​r5=Rotate[Rotate[{r2,r3},Pi/2,{0,1,0}],Pi/2,{1,0,0}];​​rt0=Table[Rotate[Rotate[{r2,r3,r4,r5},bet,{1,0,0}],i2Pi/5-Pi/2,{0,0,1}],{i,5}];​​rt00=Scale[rt0,1.23];​​v=PolyhedronData["RhombicTriacontahedron","VertexCoordinates"];​​​​(*dodecahedron*)​​m=fi^2Sin[alf];​​y=Sin[alf];​​u=yCos[bet];​​e=2uSin[2Pi/10];​​aff=N[1/2/m];​​dod=GraphicsComplex[PolyhedronData["Dodecahedron","VertexCoordinates"],Polygon[PolyhedronData["Dodecahedron","FaceIndices"]]];​​dodn={Rotate[Scale[dod,aff{1,1,1},{0,0,0}],Pi,{0,0,1}]};​​dod5={Table[Rotate[Translate[Rotate[dodn,2alf,{0,1,0}],{(v[[2]]+v[[5]])/2}],i2Pi/5,{0,0,1}],{i,5}]};​​dod25=Table[Rotate[Rotate[Rotate[dod5,Pi,{0,0,1}],-2bet,{0,1,0}],i2Pi/5,{0,0,1}],{i,5}];​​dod30=Rotate[{dod5,dod25},Pi,{0,1,0}];​​dod32={Map[Translate[dodn,#]&,v]};​​​​(*rhombichexecontahedron*)​​rh=GraphicsComplex[PolyhedronData["RhombicHexecontahedron","VertexCoordinates"],Polygon[PolyhedronData["RhombicHexecontahedron","FaceIndices"]]];​​rhn=Scale[rh,aff/2/e{1,1,1},{0,0,0}];​​rh5=Table[Rotate[Translate[Rotate[rhn,2alf,{0,1,0}],{(v[[2]]+v[[5]])/2}],i2Pi/5,{0,0,1}],{i,5}];​​rh25=Table[Rotate[Rotate[Rotate[rh5,Pi,{0,0,1}],-2bet,{0,1,0}],i2Pi/5,{0,0,1}],{i,5}];​​rh30=Rotate[{rh5,rh25},Pi,{0,1,0}];​​rh32={Map[Translate[rhn,#]&,v]};​​Graphics3D[{rt00,dod5,Red,dod25,Green,dod30,Yellow,dod32},SphericalRegionTrue,BoxedFalse,ImageSize350,ViewPoint{0,0,10}]
Out[]=
In[]:=
Graphics3D[{rt00,Red,rh5,Yellow,rh25,Green,dod32,Yellow,rh30},SphericalRegionTrue,BoxedFalse,ImageSize350]
Out[]=
In[]:=
Graphics3D[{rt00,dod5,Yellow,rh25},SphericalRegionTrue,BoxedFalse,ImageSize350,ViewPoint{0,100,0},ViewAngle0.01]
Out[]=
In[]:=
Graphics3D[{dod32,Red,rt00},SphericalRegionTrue,BoxedFalse,ImageSize350,ViewPoint{0,100,0},ViewAngle0.01]
Out[]=