で自分はtikzはニワカなので替わりにasymptoteで書いてみた
>>690 のふたつめ
texpreamble("\usepackage[whole]{bxcjkjatype}");
// 甲円, 乙円, 丙円の半径: r, a, x
// 甲円, 上甲円, 乙円, 上乙円, 丙円の中心座標: cK, cKU, cO, cOU, cH
real a = 1/2, r = 4*a, x = (16+7*sqrt(5))/11*a;
pair cK = (r, r), cKU = (0, r+sqrt(20)*a);
pair cO = (0, a), cH = (0, cKU.y+r-x), cOU = (cK+cKU)/2;
path uc = unitcircle, pO = scale(a)*uc, pK = scale(r)*uc, pH = scale(x)*uc;
draw(scale(2.2*r)*(W--E));
label("乙", cO);label("乙", cOU);label("乙", xscale(-1)*cOU);
draw(shift(cO)*pO^^shift(cOU)*pO^^shift(xscale(-1)*cOU)*pO);
label("甲", cK);label("甲", xscale(-1)*cK);label("甲", cKU+r*W+r*N/2);
draw(shift(cK)*pK^^shift(xscale(-1)*cK)*pK^^shift(cKU)*pK);
label("丙", cH);
draw(shift(cH)*pH);
size(100mm);