interface LineCircleIntersection {
    aInside: boolean;
    bInside: boolean;
    contained: boolean;
    outside: boolean;
    tangent: boolean;
    intersections: Point[];
}

Properties

aInside: boolean

Is point A inside the circle?

bInside: boolean

Is point B inside the circle?

contained: boolean

Is the segment AB contained within the circle?

outside: boolean

Is the segment AB fully outside the circle?

tangent: boolean

Is the segment AB tangent to the circle?

intersections: Point[]

Intersection points: zero, one, or two