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},SphericalRegionTrue,BoxedFalse,ImageSize350,ViewPoint{0,0,10}]
Out[]=
In[]:=
Graphics3D[{rt00,Red,rh5,Yellow,rh25,Green,dod32,Yellow,rh30},SphericalRegionTrue,BoxedFalse,ImageSize350]
Out[]=
In[]:=
Graphics3D[{rt00,dod5,Yellow,rh25},SphericalRegionTrue,BoxedFalse,ImageSize350,ViewPoint{0,100,0},ViewAngle0.01]
Out[]=
In[]:=
Graphics3D[{dod32,Red,rt00},SphericalRegionTrue,BoxedFalse,ImageSize350,ViewPoint{0,100,0},ViewAngle0.01]
Out[]=