Advance
Just some recursive squares morphing into diamonds.
Source code:
midpoints[pts_] := Mean[{#, RotateLeft[#]} &[pts]];
smootherstep[x_] := 6 x^5 - 15 x^4 + 10 x^3;
DynamicModule[
{cols = RGBColor /@ {"#2677bb", "#fbfbfb"},
pts = 2 Sqrt[2] CirclePoints[4], t},
Animate[
t = smootherstep[Mod[s, 1]];
Graphics[{
Table[{FaceForm[
If[OddQ[i] && s < 1 || EvenQ[i] && s >= 1, cols[[1]], cols[[2]]]],
Polygon[Riffle[#[[i]], (1 + t) midpoints[#[[i]]]]]}, {i, 1, Length[#]}] &@NestList[midpoints, pts, 30]},
PlotRange -> {{-4/3*.99, 4/3*.99}, {-.99, .99}}, ImageSize -> {800, 600}],
{s, 0, 2}]
]