Mein Ansatz dabei war
Code:
erstelle Liste der Linien
schneide jede Linie mit jeder
bei einem Schnittpunkt (x) ungleich den Start (s) und Endpunkten (e)
zerlege beide Linien in zwei Teile (s)->(x) und (x)->(e)
Das ganze klingt mir aber noch irgendwie zu uneffektiv.
Liste aller Linien heißt ja schon dass die Punkte alle doppelt vorkommen und dann jede Linie mit jeder zu schneiden dauert sicher auch seine Zeit.
Außerdem weiß ich nicht wie ich nachher feststellen soll in welcher Reihenfolge ich die Linien wieder zusammensetzten muss um die richtigen Polygone zu erhalten