Seven-fold rhombus tiling
Sándor Kabai
The basis for seven-fol rhombus tiling is explored.
Definitions: p7 = seven-sided polygon, p14 = fourteen-sided polygon, pz = polar zonohedron
The tiling pattern is create by rotating p7 and p14 by 14 times. This procedure is the same as the creation of pz, except that pz has vertical size too.
The basis for seven-fol rhombus tiling is explored.
Definitions: p7 = seven-sided polygon, p14 = fourteen-sided polygon, pz = polar zonohedron
The tiling pattern is create by rotating p7 and p14 by 14 times. This procedure is the same as the creation of pz, except that pz has vertical size too.
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}];Graphics3D[{Green,p7},Boxed->False,ViewPoint->{0,0,100},ImageSize->200]
Out[]=
In[]:=
v14=Table[{Sin[i2Pi/14],Cos[i2Pi/14],0},{i,15}];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}];Graphics3D[{Cyan,Translate[poly14,{0,1,0}],Yellow,p14},Boxed->False,ViewPoint->{0,0,100},ImageSize->200]
Out[]=
In[]:=
n=7;Do[zon[i,j]={2Sin[πj/n]Cos[πi/n],2Sin[πj/n]Sin[πi/n],0.5(n/2-j)},{i,0,3n},{j,0,n}];pz7=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[{pz7},Boxed->False,ViewPoint->{0,0,100},ImageSize->200,SphericalRegion->True];
In[]:=
pz7v=Rotate[pz7,Pi/2,{1,0,0}];Graphics3D[{pz7v},Boxed->False,ViewPoint->{0,0,100},ImageSize->200,SphericalRegion->True];
In[]:=
Row[Graphics3D[#,Boxed->False,ImageSize->160,ViewPoint->{0,0,100}]&/@{{Green,p7},pz7,pz7v}]
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[]:=
pz14v=Rotate[pz14,Pi/2,{1,0,0}];Graphics3D[{pz14v},Boxed->False,ViewPoint->{0,0,100},ImageSize->200,SphericalRegion->True];
In[]:=
Row[Graphics3D[#,Boxed->False,ImageSize->160,ViewPoint->{0,0,100}]&/@{{Yellow,p14},pz14,pz14v}]
Out[]=
Creating the tiles: t1, t2, t3. The envelope is a heptagon. The side is 1, the x and y values are half diagonals of rhombuses; used for determining the distances of rings.
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}]};t17=Table[Rotate[Translate[{t1},{0,y1,0}],i2Pi/7+Pi/2,{0,0,1}],{i,7}];Graphics3D[{Cyan,t17},Boxed->False,ViewPoint->{0,0,100},ImageSize->200];
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=Polygon[{vE,vF,vG,vH}];t27=Table[Rotate[Translate[t2,{1+x2,0,0}],i2Pi/7,{0,0,1}],{i,7}];t127={Cyan,t17,LightPink,t27};Graphics3D[{t127},Boxed->False,ViewPoint->{0,0,100},ImageSize->200];
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=Polygon[{vI,vJ,vK,vL}];t37=Table[Rotate[Translate[t3,{2y1+x3,0,0}],i2Pi/7+Pi/7,{0,0,1}],{i,7}];t1237={Cyan,t17,LightPink,t27,Yellow,t37};Graphics3D[{t1237},Boxed->False,ViewPoint->{0,0,100},ImageSize->200];
In[]:=
Row[Graphics3D[#,Boxed->False,ImageSize->160,ViewPoint->{0,0,100}]&/@{t17,t127,t1237}]
Out[]=
Creating the tiles: t4 (same as t2), t5 (same as t1), t6 (same a t3). The envelope is a fourteen-sided polygon, if the configuration is started with fourteen t3.
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={LightPink,Table[Rotate[Translate[t2,{0,-y2-2y3,0}],i2Pi/14,{0,0,1}],{i,14}]};t314={Yellow,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={LightPink,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={Yellow,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[{Red,p14,t114,t214,t314,t414,t514,t614},Boxed->False,ViewPoint->{0,0,100},ImageSize->300]
Forming various units.
Calculating the angles. Finding possible tiling units. Forming rings.