Uso Delaunay per triangolare un poligono concavo, ma riempie le concavità. Come rimuovo automaticamente i triangoli al di fuori dei confini dei poligoni?Come si tagliano i triangoli da una triangolazione di Delaunay concava?
6
A
risposta
2
Auto-risposta: in alcuni casi, questo è impossibile. Avevo bisogno di usare un algoritmo Delaunay vincolato: http://www.cs.cmu.edu/~quake/triangle.delaunay.html
-2
Non dovresti, dovresti trovare una routine di Delauney che gestisca correttamente i confini.
In alternativa si potrebbe, presumendo di conoscere i bordi, passare attraverso ogni triangolo e cancellare quelli che attraversano un bordo. Cerca test di interesse per segmento di segmento per codice per fare ciò.
È questo che vuoi veramente fare? I bordi di Delaunay possono attraversare i bordi del poligono, quindi usare questo per triangolare un poligono non ti darà sempre una triangolazione valida del poligono. –