У меня большой список изящных многоугольников, где некоторые могут касаться друг друга (не перекрывать друг друга).Я хотел бы объединить эти многоугольники в списке, которые касаются.Например, вот большой многоугольник, касающийся маленького многоугольника, обозначенного красными стрелками):

Кажущийся очевидным ответ здесь будет заключаться в использовании cascaded_union
.Проблема, с которой я сталкиваюсь, заключается в том, что мне нужен список, поэтому, когда я возвращаю MultiPolygon обратно в список, он возвращает исходную геометрию (касание не объединяется).Например:
polys = [...]
polys_merged = list(cascaded_union(polys)))
polys_merged
совпадает с polys
.
Есть ли простой способ сделать это?Я сам могу реализовать эту логику, но чувствую, что она будет неэффективной.