Punching the faces of icosahedron​
​By Sándor Kabai
In each side of an icosahedron an n-sided polygon hole is prepared. If n =3, then the icosahedron is perforated, and if n is large, then a circular hole is prepared.
In[]:=
fi=GoldenRatio;​​alf=ArcTan[fi];​​bet=ArcTan[1/fi];​​bet1=ArcTan[1/fi^2];​​u=0.5Sqrt[3]/3;​​(*Settheinternalpoygonhere.Largencausesthepolygonroapproachcircle.Ifn=3,thentheicoisperforatedinparallelwiththesides*)​​n=3;​​(*Setholesizehere*)​​icoperf=0.3;​​frame=Table[{2uSin[i2Pi/3-Pi/6],2uCos[i2Pi/3-Pi/6],0},{i,4}];​​hole=Table[{icoperfSin[i2Pi/n+Pi/2],icoperfCos[i2Pi/n+Pi/2],0},{i,n+1}];​​t1={FaceForm[Blue,Yellow],Polygon[Join[frame->hole]]};​​t2=Rotate[Translate[t1,{u,0,0}],bet1,{0,1,0}];​​t3=Rotate[t2,Pi,{0,0,1}];​​t4=Translate[{t2,t3},{0,0,fi/2}];​​t5=Rotate[t4,Pi,{1,0,0}];​​pico=Table[Rotate[Rotate[{t4,t5},alf,{0,1,0}],i2Pi/5,{0,0,1}],{i,5}];​​picon=Rotate[Scale[pico,1.001{1,1,1},{0,0,0}],Pi/2+Pi/10,{0,0,1}];​​Graphics3D[{picon},BoxedFalse,SphericalRegionTrue]​​​​
Out[]=
In[]:=
ico=PolyhedronData["Icosahedron","Faces"];​​Graphics3D[{picon,Orange,ico},BoxedFalse,SphericalRegionTrue]
Out[]=