:eyes:
We're talking about conformal transformations in my complex analysis class, and I decided to show how to construct a Steiner chain for two tangent circles using conformal transformations. The map $f(z) = \frac{4}{z}$ sends the circles $\{z : |z-1| = 1\}$ and $\{z: |z-2|=2\}$ to the lines $\{z: \operatorname{Re}(z) = 2\}$ and $\{z:\operatorname{Re}(z) = 1\}$, respectively. Of course it is quite easy to construct infinitely many circles tangent to these two lines:
I just had a static image, but then while I was showing it to the class I decided to animate it on the fly, which I fortunately didn't screw up.
Anyway, here's the code (of course, it's more intuitive to use ParametricPlot
, but I ended up making the circles with Polygon
so that I could easily fill them in with a different color):
With[{cols = RGBColor /@ {"#e5e7de", "#f54123", "#0b3536"}},
Manipulate[
Graphics[
{EdgeForm[None], cols[[1]], Disk[{2, 0}, 2], cols[[-1]],
Disk[{1, 0}, 1], cols[[2]],
Table[
Polygon[
Table[ReIm[4/(3/2 + I (y + s) + 1/2 E^(I ?))], {?, 0., 2 ?, 2 ?/200}]],
{y, -100, 100}]},
ImageSize -> 540, Background -> cols[[-1]],
PlotRange -> {{-.6, 4.6}, {-2.6, 2.6}}],
{s, 0, 1}]
]