В этой статье описывается, как найти область пересечения двух окружностей.В результате он легко расширяется до трех кругов.
------------- РЕДАКТИРОВАТЬ ------------- ОК, проблему нелегко расширитьВ трех кругах я нашел кандидатские диссертации на эту тему.Предполагая, что три круга пересекаются, как показано ниже, можно найти приблизительное решение (я думаю).Прежде чем мы попытаемся это сделать, мы должны проверить, пересекаются ли три круга, как показано ниже.Проблема немного меняется, если, скажем, один круг находится внутри другого, а третий пересекает их обоих.
.
Пусть S1, S2 и S3 обозначают области трех окружностей, а X1, X2 и X3 обозначают области пересечений между каждой парой окружностей (индекс увеличивается по часовой стрелке).Как мы уже установили, для них есть точные формулы.Рассмотрим следующую систему линейных уравнений:
A + D + F + G = A + D + X1 = S1
B + D + E + G = B + D + X3 = S2
B + E + D + G = B + E + X2 = S3
Это недоопределено, но приближенное решение может быть найдено с использованием метода наименьших квадратов.Я не пробовал это численно, но вернусь к вам, как только сделаю: D Если решение по методу наименьших квадратов кажется неправильным, мы также должны наложить несколько ограничений, например, площадь, если пересечение между любой парой окружностей меньше, чемплощадь кругов.Комментарии приветствуются.
PS +1 Саймону за то, что он указал, что я не должен квалифицировать вещи так просто