Special conformal transformations in 2D (CDT Student Meetings, meeting #2)
Last edited by Jens Boos, Jan 31, 2019.

SCTx[x_,y_,ϕ_,bx_,by_]:=( x-bx(x^2+y^2))/(1-2x bx-2y by +(bx^2+by^2)(x^2+y^2));
SCTy[x_,y_,ϕ_,bx_,by_]:=( y-by(x^2+y^2))/(1-2x bx-2y by +(bx^2+by^2)(x^2+y^2));
steps:=5;
plot[ϕ_,bx_,by_]:=ParametricPlot[
{
Table[{Cos[ϕ]SCTx[s,y0,ϕ,bx,by]+Sin[ϕ]SCTy[s,y0,ϕ,bx,by],Cos[ϕ]SCTy[s,y0,ϕ,bx,by]-Sin[ϕ]SCTx[s,y0,ϕ,bx,by]},{y0,-1,1,2/steps}],
Table[{Cos[ϕ]SCTx[x0,s,ϕ,bx,by]+Sin[ϕ]SCTy[x0,s,ϕ,bx,by],Cos[ϕ]SCTy[x0,s,ϕ,bx,by]-Sin[ϕ]SCTx[x0,s,ϕ,bx,by]},{x0,-1,1,2/steps}]
},
{s,-1,1},
Axes->False,
ImageSize->500,
AspectRatio->1
];

Manipulate[plot[ϕ,bx,by],{ϕ,0,2π},{bx,0,1},{by,0,1}]

(* export images *)
SetDirectory[NotebookDirectory[]];
Export["plot-00-bx=0.00-by=0.00.png",plot[0,0.00,0]];
Export["plot-01-bx=0.05-by=0.00.png",plot[0,0.05,0]];
Export["plot-02-bx=0.10-by=0.00.png",plot[0,0.10,0]];
Export["plot-03-bx=0.15-by=0.00.png",plot[0,0.15,0]];
Export["plot-04-bx=0.20-by=0.00.png",plot[0,0.20,0]];
Export["plot-05-bx=0.30-by=0.00.png",plot[0,0.30,0]];
Export["plot-06-bx=0.40-by=0.00.png",plot[0,0.40,0]];
Export["plot-07-bx=0.50-by=0.00.png",plot[0,0.50,0]];
Export["plot-08-bx=0.60-by=0.00.png",plot[0,0.60,0]];
Export["plot-09-bx=0.70-by=0.00.png",plot[0,0.70,0]];
Export["plot-10-bx=0.80-by=0.00.png",plot[0,0.80,0]];
Export["plot-11-bx=0.90-by=0.00.png",plot[0,0.90,0]];
Export["plot-12-bx=0.95-by=0.00.png",plot[0,0.95,0]];
Export["plot-13-bx=1.00-by=0.00.png",plot[0,1.00,0]];
Export["plot-14-bx=1.00-by=0.20.png",plot[0,1.00,0.2]];
Export["plot-15-bx=1.00-by=0.50.png",plot[0,1.00,0.5]];
Export["plot-16-bx=1.00-by=0.70.png",plot[0,1.00,0.7]];
Export["plot-17-bx=1.00-by=0.80.png",plot[0,1.00,0.8]];
Export["plot-18-bx=1.00-by=0.85.png",plot[0,1.00,0.85]];
Export["plot-19-bx=1.00-by=0.90.png",plot[0,1.00,0.9]];
Export["plot-20-bx=1.00-by=1.00.png",plot[0,1.00,1.0]];