from R2Graph import * def inscribedCircle(a, b, c): ab = b - a ab.normalize() ac = c - a ac.normalize() bisa = ab + ac ba = a - b ba.normalize() bc = c - b bc.normalize() bisb = ba + bc (_, center) = intersectLines(a, bisa, b, bisb) radius = center.distanceToLine(a, ab) return (center, radius)