Вы пытаетесь найти наименьший вмещающий шар MB (P) из набора точек P , чтобы вы могли использовать алгоритм, реализованный здесь https://github.com/hbf/miniball. (Примечание: "ball" и «сфера» в данном контексте является синонимом.)
Однако в вашем случае это излишне, поскольку в наборе точек P под рукой находится ровно 3 точки (вершины треугольника). В этом конкретном случае вы можете использовать тот факт, что наименьший вмещающий шар MB (P) из P = {p, q, r} равен либо:
- B (p, q) , если r содержится в B (p, q) или
- B (p, r) , если q содержится в B (p, r) или
- B (q, r) , если p содержится в B (q, r) или
- B (p, q, r) в противном случае.
Здесь B (x, y) - наименьший шар, содержащий точки x, y и B (x, y, z) - это маленький шарик, содержащий точки x, y, z на границе. B (x, y) и B (x, y, z) могут быть вычислены путем решения линейной системы уравнений.
Примечание: Я автор https://github.com/hbf/miniball.