У меня много полигонов, и после объединения всех этих полигонов я получаю новый, большой многоугольник. Алгоритм объединения - это черный ящик, использующий процесс сторонней библиотеки, который я не мог контролировать, и я также не могу надеяться извлечь какую-либо информацию из своего рода прогресса.
Есть ли у меня эффективный способ узнать для каждого края этого большого гигантского объединенного многоугольника, какой из них принадлежит какому краю меньшего многоугольника?
Метод грубой силы для решения этой проблемы состоит в том, чтобы сравнить каждое ребро объединенного многоугольника с каждым из меньших многоугольников, но это будет очень неэффективно. Есть ли другие более эффективные методы?
Моя догадка подсказывает мне, что здесь может помочь алгоритм развертки , хотя я совершенно не знаю, как это сделать.
Править: n малых многоугольников могут перекрываться, поэтому объединенный многоугольник может содержать точки, расположенные на краях маленьких многоугольников, но эти точки могут не быть вершинами исходных многоугольников.
Снимок экрана приведен ниже: