Icosahedron faces are covered with lattice of polyhedra, or spheres. The polyhedra, its frequency and size can be adjusted. The polyhedra can also be rotated.
In[]:=
Manipulate[fi=GoldenRatio;alf=ArcTan[fi];bet=ArcTan[1/fi];bet1=ArcTan[1/fi^2];x=1/Tan[Pi/6];aff=2x/(2x+2k);poly=Polygon[Table[{dSin[i2Pi/n+rot],dCos[i2Pi/n+rot],0},{i,n}]];sp={Red,Sphere[{0,0,0},dia]};points=Table[{2j-i,Sqrt[3]i,0},{i,0,k},{j,i,k}];(*Hereyoucaninsertanyobjectoffigureinsteadofspandpoly*)i1=Map[Translate[{sp,poly},#]&,points];e1=Polygon[{{-x,-1,0},{x,-1,0},{0,2,0}}];i2=Translate[Scale[{i1},aff{1,1,1},{0,0,0}],{-kaff,-1+aff,0}];i3=Rotate[Translate[Rotate[{i2},Pi/6,{0,0,1}],{1,0,0}],bet1,{0,1,0}];i4=Rotate[i3,Pi,{0,0,1}];i5=Translate[{i3,i4},{0,0,2xfi/2}];i6=Rotate[i5,Pi,{1,0,0}];icor=Table[Rotate[Rotate[{i5,i6},alf,{0,1,0}],i2Pi/5,{0,0,1}],{i,5}];ico=PolyhedronData["Icosahedron","Faces"];icon=Rotate[Scale[ico,0.999×2x],Pi,{0,0,1}];Graphics3D[{Cyan,icor,Yellow,icon},BoxedFalse,SphericalRegionTrue,ImageSize400,ViewPoint{0,100,0}],{{dia,0.3,"sphere diameter"},0,1},{{k,3,"frequency"},0,10,1,RadioButton},{{n,6,"polygon"},3,13,1,RadioButton},{{d,1,"size"},0.1,1},{{rot,0,"rotate"},0,Pi},TrackedSymbols->Manipulate]
Out[]=
In[]:=
Graphics3D[{i3,i4},BoxedFalse,SphericalRegionTrue,ViewPoint{0,0,100}]
Out[]=

