Я ищу способ рассчитать общие площади, покрытые несколькими перекрывающимися полигонами. Все полигоны расположены под прямым углом, если это помогает упростить задачу.
Так например:
BBBBB BBBBB AAA---BB AAA---BB AAAAAA AA--AA AA--AA LL LL LLLLLL LLLLLL
Я хотел бы найти общую площадь, покрытую A, B и L, которая будет равна: B = 5x4 = 20 + A = 6x5 = 30 + L = 4x2 + 6x2 = 20 = 70 минус перекрывающиеся области: - 10 = 60 ( общая площадь, покрытая всеми полигонами)
Мне нужно уметь обслуживать ситуации, когда 3 или более полигонов занимают одну и ту же площадь. Есть ли для этого подходящий алгоритм, который мог бы принимать массивы массивов координат x / y в качестве входных данных? (образец исходного кода Java будет очень кстати).