Here is an approximation with clips. I made a pic for the infinity symbol that I'm drawing in two parts (top and bottom). Then, the most important thing in my approach is playing with the needed clips. They are the key for fixing each infinity symbol over or under the others.
\documentclass[border=2mm]{standalone}
\usepackage {tikz}
% dimensions
\def\R {2} % outer radius
\def\r {1} % inner radius
\def\sp{13} % centers separation
\pgfmathsetmacro\a{acos((0.5\R+0.5\r)/\R)} % intersection angle (between circles)
% styles
\definecolor{color1}{rgb}{0 ,0.4,0 } % green
\definecolor{color2}{rgb}{0 ,0 ,0.4} % blue
\definecolor{color3}{rgb}{1 ,0.4,0 } % orange
\definecolor{color4}{rgb}{1 ,1 ,0 } % yellow
\definecolor{color5}{rgb}{0.7,0 ,0 } % red
\definecolor{color6}{rgb}{0.4,0 ,0.4} % magenta
\tikzset
{%
pics/infinity/.style={%
code={%
\foreach\i in {-1,1}
{% fill
\begin{scope}[x={(\i cm,0 cm)}, y={(0 cm,\i cm)}]
\fill (0.5\R+1.5\r,0) arc (360:180:\r) arc (0:180:0.5\R-0.5\r) arc
(360:180:\r) arc (0:180:0.5\R-0.5\r) arc (180:360-\a:\R) arc
(180+\a:360:\R) -- cycle;
\end{scope}
}
\foreach\i in {-1,1}
{% draw
\begin{scope}[x={(\i cm,0 cm)}, y={(0 cm,\i cm)}]
\draw (-0.5\R+0.5\r,0) arc (-180:180-\a:\R);
\draw (\R-0.5*\r,0) circle (\r);
\end{scope}
}
}},
}
\begin{document}
\begin{tikzpicture}[line cap=round,line join=round,line width=0.75mm]
\def\HA{4.3} % 'hexagon' apotheme
\def\PA{3.5} % 'pentagon' apotheme
\useasboundingbox (-1.55\HA,-1.55\HA) rectangle (\sp+1.7\PA,1.55\HA);
\begin{scope} % hexagon
\foreach\i in {1,...,6}
\draw (60\i-30:\HA) pic[rotate=60\i+60,draw=gray!15,fill=color\i]{infinity};
\begin{scope}
\clip (0,0) -- (30:2\HA) -- (-30:2\HA) -- cycle;
\draw (60-30:\HA) pic[rotate=60+60,draw=gray!15,fill=color1]{infinity};
\end{scope}
\clip (0,0) circle (\HA);
\foreach\i in {5,...,1}
\draw (60\i-30:\HA) pic[rotate=60\i+60,draw=gray!15,fill=color\i]{infinity};
\begin{scope}
\clip (0,0) -- (30:2\HA) -- (-30:2\HA) -- cycle;
\draw (606-30:\HA) pic[rotate=606+60,draw=gray!15,fill=color6]{infinity};
\end{scope}
\end{scope}
%
\begin{scope}[shift={(\sp,0)}] % pentagon
\foreach\i in {1,...,5}
\draw (72\i-18:\PA) pic[rotate=72\i-108,draw=gray!15,fill=color\i]{infinity};
\begin{scope}
\clip (0,0) -- (69:2.5\PA) -- (-3:2.5\PA) -- cycle;
\draw (72-18:\PA) pic[rotate=72-108,draw=gray!15,fill=color1]{infinity};
\end{scope}
\clip (0,0) circle (\PA);
\foreach\i in {5,...,1}
\draw (72\i-18:\PA) pic[rotate=72\i-108,draw=gray!15,fill=color\i]{infinity};
\begin{scope}
\clip (0,0) -- (69:2.5\PA) -- (-3:2.5\PA) -- cycle;
\draw (725-18:\PA) pic[rotate=725-108,draw=gray!15,fill=color5]{infinity};
\end{scope}
\end{scope}
\end{tikzpicture}
\end{document}

Edit: Added the 'hexagon'.