Seven-fold rhombus tiling examples
Sándor Kabai
In a former submission the basis for seven-fold rhombus tiling was explored, where the relationship with polar zonohedra was also described. Now a couple of examples are given for constructing tiling from the three different tiles.
Two basic tiling patterns can be illustrated by depicting seven-sided an fourteen-sided polygons aligned around a point of rotation seven and fourteen times with and angular spacing Pi/7 and Pi/14. The patters contain only three different rhombuses. (see the toy: https://www.fractiles.com/)
In[]:=
v7=Table[{Sin[i2Pi/7],Cos[i2Pi/7],0},{i,8}];​​tube7=Tube[v7];​​p7=Table[Rotate[Translate[tube7,{0,-1,0}],i2Pi/14,{0,0,1}],{i,14}];​​poly7=Translate[Polygon[v7],{0,-1,0}];​​seven={poly7,Green,p7};​​Graphics3D[{tube7},Boxed->False,ViewPoint->{0,0,100},ImageSize->200]
Out[]=
In[]:=
v7=Table[{Sin[i2Pi/7],Cos[i2Pi/7],0},{i,8}];​​tube7=Tube[v7];​​p7=Table[Rotate[Translate[tube7,{0,-1,0}],i2Pi/14,{0,0,1}],{i,14}];​​poly7=Translate[Polygon[v7],{0,-1,0}];​​seven={poly7,Green,p7};
In[]:=
v14=Table[{Sin[i2Pi/14],Cos[i2Pi/14],0},{i,14}];​​tube14=Tube[v14];​​poly14=Polygon[v14];​​line14=Line[v14];​​p14=Table[Rotate[Translate[tube14,{0,-1,0}],i2Pi/14,{0,0,1}],{i,14}];​​l14=Table[Rotate[Translate[line14,{0,-1,0}],i2Pi/14,{0,0,1}],{i,14}];​​fourteen={Cyan,Translate[poly14,{0,1,0}],Yellow,p14};​​Row[Graphics3D[#,Boxed->False,ImageSize->200,ViewPoint->{0,0,100}]&/@{seven,fourteen}]​​
Out[]=
In[]:=
n=14;​​Do[zon[i,j]={​​2Sin[πj/n]Cos[πi/n],2Sin[πj/n]Sin[πi/n],0.2(n/2-j)},​​{i,0,3n},{j,0,n}];​​pz14=Table[Polygon[{​​zon[i+j+1,j],​​zon[i+j+2,j+1],​​zon[i+j+1,j+2],​​zon[i+j,j+1]}],​​{i,0,2n,2},{j,0,n-2}];​​Graphics3D[{pz14},Boxed->False,ViewPoint->{0,0,100},ImageSize->200,SphericalRegion->True];
In[]:=
Row[Graphics3D[#,Boxed->False,ImageSize->200,ViewPoint->{0,0,100}]&/@{{Yellow,p14},pz14}]
Out[]=
Creating the tiles: t1, t2, t3. The envelope is a heptagon. The side is 1, the x and y values are the half diagonals of rhombuses; used for determining the distances of rings. The angles are Pi/7, 2Pi/7 and Pi/14.
In[]:=
(*TileNo.1:*)​​y1=Cos[Pi/7];​​x1=Sin[Pi/7];​​vA={x1,0,0};​​vB={0,y1,0};​​vC={-x1,0,0};​​vD={0,-y1,0};​​t1={Cyan,Polygon[{vA,vB,vC,vD,vA}]};​​t17=Table[Rotate[Translate[{t1},{0,y1,0}],i2Pi/7+Pi/2,{0,0,1}],{i,7}];
In[]:=
(*TileNo.2:t2*)​​y2=2y1Sin[Pi/7];​​x2=Sqrt[1-y2^2];​​vE={x2,0,0};​​vF={0,y2,0};​​vG={-x2,0,0};​​vH={0,-y2,0};​​t2={LightPurple,Polygon[{vE,vF,vG,vH,vE}]};​​t27=Table[Rotate[Translate[t2,{1+x2,0,0}],i2Pi/7,{0,0,1}],{i,7}];​​t127={t17,t27};
In[]:=
(*TileNo.3:t3*)​​y3=(1+2x2)Sin[Pi/7];​​x3=Sqrt[(1+2x2)^2-y3^2]-2y1;​​vI={x3,0,0};​​vJ={0,y3,0};​​vK={-x3,0,0};​​vL={0,-y3,0};​​t3={Yellow,Polygon[{vI,vJ,vK,vL,vI}]};​​t37=Table[Rotate[Translate[t3,{2y1+x3,0,0}],i2Pi/7+Pi/7,{0,0,1}],{i,7}];​​t1237={t17,t27,t37};​​sp=Sphere[{0,0,0},0.06];
In[]:=
t1cent=Translate[t1,{0,y1,0}];​​t2cent=Rotate[Translate[t2,{0,y2,0}],-5Pi/14,{0,0,1}];​​t3cent=Rotate[Translate[t3,{0,y3,0}],3Pi/14,{0,0,1}];​​Graphics3D[{sp,t1cent,t2cent,t3cent},Boxed->False,ViewPoint->{0,0,100},ImageSize->200]
Out[]=
In[]:=
(*Thethreerhombusesformrings,witht1atthecentre*)​​Row[Graphics3D[#,Boxed->False,ImageSize->160,ViewPoint->{0,0,100}]&/@{t17,t27,t37}]
Out[]=
In[]:=
Row[Graphics3D[#,Boxed->False,ImageSize->160,ViewPoint->{0,0,100}]&/@{t17,t27,t1237}]
Out[]=
If rhombuses t3 is placed at the centre (14 of them), then 6 rings can be formed.
​
In[]:=
(*Herearetherings*)​​t114=Table[Rotate[Translate[Rotate[t1,Pi/2,{0,0,1}],{y1+1,0,0}],i2Pi/14,{0,0,1}],{i,14}];​​t214={Table[Rotate[Translate[t2,{0,-y2-2y3,0}],i2Pi/14,{0,0,1}],{i,14}]};​​t314={Table[Rotate[Translate[t3,{0,-y3,0}],i2Pi/14,{0,0,1}],{i,14}]};​​y4=(2y3+2y2)Sin[Pi/14];​​x4=(y4/Tan[Pi/14])-(1+2y1);​​t414={Table[Rotate[Translate[t2,{1+2y1+x4,0,0}],i2Pi/14,{0,0,1}],{i,14}]};​​t514=Table[Rotate[Translate[t1,{2y3+2y2+x1,0,0}],i2Pi/14+Pi/14,{0,0,1}],{i,14}];​​t614={Table[Rotate[Translate[t3,{1+2y1+2x2+x3,0,0}],i2Pi/14,{0,0,1}],{i,14}]};​​v14=Table[(1+2y1+2x4+2x3){Sin[i2Pi/14+Pi/14],Cos[i2Pi/14+Pi/14],0},{i,15}];​​p14=Tube[v14];​​Graphics3D[{p14,t114,t214,t314,t414,t514,t614},Boxed->False,ViewPoint->{0,0,100},ImageSize->300]
Forming various units.