Focus on 10-gons, some examples

figure8={{0.648+0.57 I},{0.291+0.83 I},{-0.067+0.71 I},{-0.188+0.405 I},{0.085+0.1 I},{0.43-0.475 I},{0.068-0.795 I},{-0.354-0.64 I},{-0.386-0.185 I},{0.784+0.045 I}};
regular={{0.809017+0.587785 I},{0.309017+0.951057 I},{-0.309017+0.951057 I},{-0.809017+0.587785 I},{-1.+0. I},{-0.809017-0.587785 I},{-0.309017-0.951057 I},{0.309017-0.951057 I},{0.809017-0.587785 I},{1.+0. I}};
regularreverse={{1.+0. I},{0.809017-0.587785 I},{0.309017-0.951057 I},{-0.309017-0.951057 I},{-0.809017-0.587785 I},{-1.+0. I},{-0.809017+0.587785 I},{-0.309017+0.951057 I},{0.309017+0.951057 I},{0.809017+0.587785 I}};
bean={{1.073+0.635 I},{0.747+0.965 I},{0.194+0.82 I},{-0.13+0.32 I},{-0.549-0.03 I},{-0.605-0.495 I},{-0.306-0.785 I},{0.193-0.755 I},{0.782-0.475 I},{1.+0. I}};
packman={{0.809017+0.587785 I},{0.309017+0.951057 I},{-0.309017+0.951057 I},{-0.809017+0.587785 I},{-1.+0. I},{-0.809017-0.587785 I},{-0.309017-0.951057 I},{0.309017-0.951057 I},{0.809017-0.587785 I},{-0.399-0.02 I}};

Define circulant matrix
k is the dimension of the matrix
n is the n in n-th primitive root
m is the power of that primitive root that we are using. In general k will be equal to n for our purposes, but let’s keep them separate regardless

circulant[m_,n_, k_]:=Module[{mainDiagonal,aboveDiagonal,matrix},mainDiagonal=ConstantArray[(1/(1-(E^((m 2I π)/n)))),k];
aboveDiagonal=ConstantArray[((-(E^((m 2I π)/n)))/(1-(E^((m 2I π)/n)))),k-1];
matrix=DiagonalMatrix[mainDiagonal]+DiagonalMatrix[aboveDiagonal,1];
matrix[[-1,1]]=((-(E^((m 2I π)/n)))/(1-(E^((m 2I π)/n))));
Return[matrix];]

Example of circulant matrix/attach 72 degree angles (non-zero entries in rows swapped in video)

MatrixForm[circulant[1,5, 5]]

Generate a random complex vector of length n in a 20 x 20 box if needed, to replace the specific examples like the infinity sign

randomVector[n_]:=RandomComplex[{-10-10 I,10+10 I},{n,1}]

Evolution of the figure 8 shown in the video

drawPolygon[vector_List,color_]:=Module[{points,polygon},points=Flatten[ReIm[vector],1];
polygon=Line[Append[points,First[points]]];
{color,Thickness[0.005],polygon,Black,PointSize[.011],Point[points]}]

u=10;
vector=9.4figure8;

Manipulate[Module[{results,colors,factors},results={vector};
colors={Blue};
Do[If[i>0,factors=Table[circulant[j,u,u],{j,1,i}];
AppendTo[results,Apply[Dot,factors].vector];
AppendTo[colors,ColorData[97][i]];],{i,0,v}];
Graphics[MapThread[drawPolygon,{results,colors}],Frame->False,ImageSize->700,PlotRange->{{-s,s},{-s,s}}]],{{v,0,"Factors"},0,u-1,1}]

Evolution of the reverse figure 8 shown in the video. Use this Permute/choose which angles to use in which order 1, 2, 3, ..., 9

u=10;
vector=9.4 figure8;
perm={9,8,7,6,5,4,3,2}
(*{1,2,3,4,5,6,7,8}*)

(*RandomSample[Range[8]]
{1,2,8,5,7,3,4,6}*)
(*Random permutation of numbers from 1 to 8*)Manipulate[Module[{results,colors,factors},results={vector};
colors={Blue};
Do[If[i>0,factors=Table[circulant[perm[[j]],u,u],{j,1,i}];
AppendTo[results,Apply[Dot,factors].vector];
AppendTo[colors,ColorData[97][i]];],{i,0,v}];
Graphics[MapThread[drawPolygon,{results,colors}],Frame->False,ImageSize->700,PlotRange->{{-s,s},{-s,s}}]],{{v,8,"Factors"},0,u-2,1}]

10-gons design tool

complexNumbers={};(*Define a global variable*)Manipulate[Module[{gon},gon=Append[pts,First[pts]];
complexNumbers=Table[ToString[Complex@@pt],{pt,pts}];
Column[{Row[{Graphics[{EdgeForm[Black],FaceForm[None],Polygon[gon],Black,PointSize[Medium],Point[pts]},PlotRange->{{-1.1,1.1},{-1.1,1.1}},ImageSize->Medium],Spacer[20],Column[MapIndexed[EventHandler[Style[#,14],{"MouseClicked":>CopyToClipboard[complexNumbers[[First@#2]]]}]&,complexNumbers]]}]}]],{{pts,N@Table[{Cos[2 Pi i/10],Sin[2 Pi i/10]},{i,10}]},Locator,LocatorAutoCreate->True},Initialization:>(exportComplexNumbers[]:=complexNumbers)]