What about of implementing a free function taking the subjects as parameters, instead of binding it to a specific class, if you can't tell which it should belong to specifically?
Would a separate "middle-man" Intersections
class be better?
If you're working with a programming language like c# or java, which doesn't support free functions, you probably should have such Intersections
(static
) class, e.g. like in c#:
public static class Intersections {
public static IList<Point> GetIntersectionPoints(Circle c, LineSegment ls) {
// ...
}
}