Identificar a aresta original de um polígono de união

Tenho muitos polígonos e, depois de fazer a união de todos esses polígonos, recebo um novo e grande polígono. O algoritmo de união é uma caixa preta e usa um processo de biblioteca de terceiros, que eu não conseguia controlar, e também não espero extrair qualquer informação para obter algum tipo de progress

Existe uma maneira eficiente de eu saber, para cada extremidade daquele grande polígono sindicalizado gigantesco, qual pertence a qual extremidade do polígono meno

Uma maneira de força bruta para resolver esse problema é comparar todas as arestas do polígono sindicalizado com cada um dos polígonos menores, mas isso será muito ineficiente. Alguma outra técnica mais eficiente?

Meu palpite me diz quelgoritmo de linha de varredura pode ajudar aqui, embora eu não tenha absolutamente nenhuma idéia de como fazê-l

Edit: Os pequenos polígonos podem se sobrepor, de modo que o polígono da união pode conter pontos localizados nas bordas dos polígonos pequenos, mas esses pontos podem não ser os vértices dos polígonos originai

Uma captura de tela disso é mostrada abaixo:

questionAnswers(3)

yourAnswerToTheQuestion