I decided to simplify and compress the motif. The offset got simplified to {{3 (1 + Sqrt[3])/2, 0}, {0, 1}} in the process.
p15 = {
{{5-5 s,1+s},{5-5 s,5-3 s},{1-s,-7+s},{-1+s,-1-s},{1-s,1+s}},
{{-5-3 s,7-s},{-7-s,1+s},{5-5 s,5-3 s},{5-5 s,1+s},{1-5 s,5+s}},
{{-1-3 s,11-s},{5-5 s,13-3 s},{1-s,1+s},{5-5 s,1+s},{1-5 s,5+s}},
{{-1-3 s,3-s},{1-5 s,-3+s},{-11-s,1-3 s},{-11-s,-3+s},{-7-s,1+s}},
{{-5-3 s,7-s},{-11-s,9-3 s},{-7-5 s,-3+s},{-11-s,-3+s},{-7-s,1+s}},
{{-11-s,-3+s},{-11-s,1-3 s},{-7-5 s,-11+s},{-5-7 s,-5-s},{-7-5 s,-3+s}}}/8/.s->Sqrt[3];
This allows a more compact presentation.
motif = Polygon /@ Join[p15, -p15];
colors = {{Red, Blue, Brown}, {Yellow, Orange, Purple}, {Green, Cyan, White}};
Graphics[{EdgeForm[Black], Table[{colors[[Mod[x, 3, 1], Mod[y, 3, 1]]],
Translate[motif, {x 3 (1 + Sqrt[3])/2, y }]}, {x, -1, 1}, {y, -3, 3}]},
PlotRange -> {{-4.5, 4.5}, {-1.5, 1.5}}, ImageSize -> {660, 220}]