Bueno, ponemos una respuesta aquí que no es una respuesta completa a nuestra pregunta, es decir, la pregunta permanecerá " abierta para responder ". Sin embargo, es una solución para el problema en la pregunta. Aquí está el truco que usamos:
Primero veamos los resultados :

Entonces, las líneas dadas en los leftpolígonos construidos que se muestran en el middle. Son polígonos reales como se muestra en right;)
Para el algoritmo que se proporciona a continuación, utilizamos el Shapelypaquete en Python .
- líneas ==>
MultiLineString {:: M}
- agregue un pequeño
buffer, diga eps{:: MB}
- region ==>
Polygon {:: P} (región aquí es un cuadrado)
P.difference(MB) {polígonos resultantes}
Tenga en cuenta que su funcionamiento es silencioso y rápido. Sin embargo, el punto que falta es que el algoritmo no es un método original para construir polígonos a partir de líneas . Sin embargo, funcionó perfectamente para el problema que teníamos en nuestras manos.