Icosahedron fractal and golden truncated icosahedron​
​by Sándor Kabai
A cluster of 12 icosahedra (ico12) with edge to edge connection is created by placing at each vertex of a larger icosahedron (ICO).
In[]:=
fi=GoldenRatio;​​alf=ArcTan[fi];​​bet=ArcTan[1/fi];​​bet1=ArcTan[1/fi^2];​​ico=GraphicsComplex[PolyhedronData["Icosahedron","VertexCoordinates"],Polygon[PolyhedronData["Icosahedron","FaceIndices"]]];​​icov=ico[[1]];​​ico12=Map[Translate[ico,#]&,fiicov];​​Graphics3D[{ico12},SphericalRegionTrue,BoxedFalse]​​
Out[]=
In[]:=
ico1=Scale[ico,fi^2];​​Graphics3D[{ico12,Green,Scale[ico1,0.9999]},SphericalRegionTrue,BoxedFalse]
Out[]=
The ico12 cluster is enveloped by a larger ICO.
In[]:=
icofr1=Normal[ico1]/.p:Polygon[__](p/.pts:{{_?NumericQ,_,_},__}Module[{cent,innervtx},cent=Mean[pts];​​innervtx={1-0.2,0.2}.{#,cent}&/@pts;​​Join[pts,pts[[{1}]],innervtx,innervtx[[{1}]]]])//#&;​​Graphics3D[{ico12,Green,Scale[icofr1,1.0001]},SphericalRegionTrue,BoxedFalse]
Out[]=
The frame of enveloping ICO allows to see the inside structure.
z2=1/fi^2;​​uu=0.5Sqrt[3]/3;​​vA={0.5-z2,-uu,0};​​vB={-0.5+z2,-uu,0};​​perf=0.65;​​(*Triangles*)​​vAp=Table[RotationTransform[i2Pi/3,{0,0,1}][vA],{i,3}];​​vBp=Table[RotationTransform[i2Pi/3,{0,0,1}][vB],{i,3}];​​pA=Polygon[vAp];​​pB=Polygon[vBp];​​iA={0.5,-uu,0};​​vI=Table[RotationTransform[i2Pi/3,{0,0,1}][iA],{i,3}];​​pI=Polygon[vI];​​(*Hexagon*)​​vA1=RotationTransform[2Pi/3,{0,0,1}][vA];​​vA2=RotationTransform[4Pi/3,{0,0,1}][vA];​​vB1=RotationTransform[2Pi/3,{0,0,1}][vB];​​vB2=RotationTransform[4Pi/3,{0,0,1}][vB];​​hexa={vA,vB1,vA1,vB2,vA2,vB};​​hexb=perfhexa;​​hex=Polygon[Join[hexa->hexb]];​​i1={hex};​​i2=Translate[Rotate[Translate[{i1},{0,uu,0}],-bet1,{1,0,0}],{0,0,fi/2}];​​i3=Rotate[i2,Pi,{0,0,1}];​​i4=Table[Rotate[Rotate[{i2,i3},alf,{1,0,0}],i2Pi/5,{0,0,1}],{i,5}];​​i5=Rotate[i4,Pi,{1,0,0}];​​(*Pentagon*)​​zT=Sqrt[0.25+(fi/2)^2];​​k=z2Sin[bet];​​zP=zT-k;​​xP=z2Cos[bet];​​spP=Sphere[{xP,0,zP},0.03];​​vP={xP,0,0};​​vP5a=Table[RotationTransform[i2Pi/5+Pi/2,{0,0,1}][vP],{i,5}];​​vP5b=perfvP5a;​​pent1=Translate[Polygon[Join[vP5avP5b]],{0,0,zP}];​​pent5=Table[Rotate[Rotate[Rotate[pent1,Pi,{0,0,1}],-2bet,{1,0,0}],i2Pi/5,{0,0,1}],{i,5}];​​pent6=Rotate[{pent1,pent5},Pi,{1,0,0}];​​ticog2=Rotate[Scale[{i4,i5,pent1,pent5,pent6},1.0001],-Pi/2,{0,0,1}];​​tic={i4,i5};​​tica=Rotate[Scale[tic,fi^2{1,1,1},{0,0,0}],-Pi/2,{0,0,1}];​​Graphics3D[{ico12,Red,tica},SphericalRegionTrue,BoxedFalse]​​
Out[]=
The part of the enveloping ICO not in contact with ico12 corresponds to a golden truncated icosahedron (TICOG).
TICOG shown as a frame
​
One ico12 cluster is placed at each vertex of a largar ICO forming a fractal structure.
The relationship with TICOG remains the same.