\documentclass{standalone} \usepackage{luamplib} \begin{document} \mplibtextextlabel{enable} \begin{mplibcode} beginfig(1); path C; pair p; C = fullcircle scaled 100; p = 189 right rotated 30; pair o, m, t, t'; o = center C; m = 1/2[o, p]; t = C intersectionpoint halfcircle zscaled (p-o) shifted m; t' = C intersectionpoint halfcircle zscaled (o-p) shifted m; drawoptions(dashed withdots scaled 1/4 withcolor (.2, .2, .7)); draw fullcircle zscaled p shifted 1/2 p; draw t -- center C -- p; drawoptions(withcolor (.2, .2, .7)); dotlabel.lrt("$m$", 1/2 p); dotlabel.llft("$o$", center C); drawoptions(dashed evenly); draw t -- p -- t'; drawoptions(); draw C; label.llft("$C$", point 5 of C); dotlabel.urt("$p$", p); dotlabel.ulft("$t$", t); dotlabel.bot("\strut $t'$", t'); endfig; \end{mplibcode} \end{document}