Deltoid spirals

Sándor Kabai
​
Deltoid spirals are arranged in a space filling manner. Truncation of each deltoid leads to various patterns. The number of deltoid in a spiral is infinite, inside or outside an initial polygon.
In[]:=
Needs["PolyhedronOperations`"]​​Manipulate[​​m=Sin[Pi/n];h=Cos[Pi/n];p=h-a;α=ArcTan[p/m];γ=Pi/2-α;​​δ=(Pi/n)-(Pi/2)+α;β=Pi-α-γ-δ;r=-mTan[β];vA={m,h};vA1={m,h};vB={0,h+r};vB1={0,h+r};vC={-m,h};vC1={-m,h};​​vD={0,a};vD1={0,a};​​start={EdgeForm[Thin],RGBColor[0.2,0.4,0.8],Table[Rotate[Line[{vA,vB,vC,{0,a},vA}],i2Pi/n,{0,0}],{i,n}]};​​pol={EdgeForm[Blue],Truncate[Polygon[{vA,vB,vC,vD}],trunc]};​​par=ParametricPlot[{Sin[x],Cos[x]},{x,0,2Pi}][[1]];​​base={Opacity[0.35],RGBColor[0.7,0.8,0.9],Polygon[Table[{Sin[2Pix/n+Pi/n],Cos[2Pix/n+Pi/n]},{x,0,n}]]};​​fin=Table[Rotate[Table[{Specularity[0.9],Hue[0.4^2i],Scale[Rotate[{pol},iPi/n,{0,0}],{a^i,a^i},{0,0}]},{i,u}],j2Pi/n,{0,0}],{j,sp}];​​in=Line[{{0,0},{0,a}}];​​unit={Red,Line[{{0,0},{Sin[Pi/n],Cos[Pi/n]}}]};​​Graphics[{If[ins,{in,pol,unit,Text["a",{-0.05,0.4}],fin,Text["unit",{m/2,0.4}]},{}],base,par,fin},ImageSize400],​​{{trunc,0,"truncate"},0,1},​​{{a,1.36,"distance a"},0.5,2},​​{{n,10,"polygon"},3,10,1,RadioButton},​​{{ins,False,"show initial kite"},{True,False}},​​{{sp,n,"spirals"},1,n,1,ImageSizeTiny,ControlPlacementLeft},​​{{u,7,"levels"},0,10,1,ImageSizeTiny,ControlPlacementLeft},TrackedSymbolsManipulate,SaveDefinitions->True]
Out[]=
​
truncate
distance a
polygon
3
4
5
6
7
8
9
10
show initial kite
spirals
levels