Каков наилучший способ объединения перекрывающихся кругов в многоугольники?
Мне присваивается список центральных точек окружностей с фиксированным диаметром.
Мне нужно объединить любые перекрывающиеся круги и вывести список точек в полученном многоугольнике.
Это кажется довольно распространенной проблемой (системы ГИС, векторы и т.д.). Это можно сделать через API Карт Google, но я ищу фактический алгоритм.
Я попытался решить эту проблему, вычислив точки вокруг каждого круга.
Затем удалим любые точки, расположенные внутри любого круга.
Это дает мне правильный список точек в желаемом многоугольнике.
Тем не менее, порядок точек является проблемой с этим решением. Каждый круг имеет свои точки, хранящиеся в массиве. Правильно объединить их с двумя перекрывающимися кругами относительно прямо. Однако при работе с несколькими перекрывающимися кругами это становится сложным.
Надеюсь, у вас есть идеи, чтобы либо сделать это решение, либо другим алгоритмом, который достигнет желаемого результата.
Спасибо заранее!