\documentclass{standalone}
\usepackage{luamplib}
\begin{document}
\mplibtextextlabel{enable}
\begin{mplibcode}
input geometry-tangent-times
color tb; tb = (0.2, 0.2, 0.7);
beginfig(1);
path A, B;
A = fullcircle scaled 144;
B = fullcircle scaled 60 shifted (200, 140);

numeric R, r;
R = abs (point 0 of A - center A);
r = abs (point 0 of B - center B);

path C; numeric t, u;
C = fullcircle scaled (2R-2r) shifted center A;
(t, u) = tangent_times(C, center B);

draw A withpen pencircle scaled 2 withcolor 3/4[blue, white];
draw B withpen pencircle scaled 2 withcolor 3/4[blue, white];

draw subpath (t, u) of A -- subpath (u-8, t) of B -- cycle;

draw C withpen pencircle scaled 1 withcolor 7/8[blue, white];
draw subpath (t, u) of C -- center B -- cycle dashed evenly withcolor 1/2;

drawoptions(dashed withdots scaled 1/2 withcolor 1/4);
forsuffixes $=t, u: 
    draw point $ of C -- point $ of A; 
    draw center B -- point $ of B;
endfor

drawoptions(withcolor tb);
label.urt("$A$", point 1 of A);
label.ulft("$B$", point 4 of B); 
label.urt("$C$", point 1/2 of C);
drawdot center B withpen pencircle scaled dotlabeldiam;

drawoptions();
dotlabel.lrt("$t$", point t of C);
dotlabel.ulft("$t$", point t of A);
dotlabel.ulft("$t$", point t of B);
dotlabel.ulft("$u$", point u of C);
dotlabel.lrt("$u$", point u of A);
dotlabel.lrt("$u$", point u of B);

label.rt("$r$", 1/2[center B, point t of B]);
label.rt("$r$", 1/2[point t of C, point t of A]);


endfig;
\end{mplibcode}
\end{document}

