function circlewithratio([pA1, pA2], [pB1, pB2], ratio) {
const [v1, v2] = [pB1 - pA1, pB2 - pA2];
const
vv = (v1*v1 + v2*v2),
denom = 1 / (ratio - 1),
pC_displacement = ratio * denom,
radius = Math.sqrt(vv * ratio) * Math.abs(denom);
const [pC1, pC2] = [pA1 + v1 * pC_displacement, pA2 + v2 * pC_displacement];
return [pC1, pC2, radius];
}