5.3 Delaunay-Triangulierung
Definition: der duale Graph (Folie 36)
Der duale Graph eines Voronoi-Diagramms heißt Delaunay-Graph. Benannt nach Boris Nikolajewitsch Delone (1890–1980), Mathematiker und Bergsteiger.
Dualität konkret:
| Voronoi-Diagramm | Delaunay-Graph |
|---|---|
| Zelle | Knoten |
| Kante zwischen und | Kante |
| Voronoi-Knoten (Grad 3) | Dreieck |
| Voronoi-Knoten vom Grad | konvexes -Eck |
| unbeschränkte Zelle | Punkt auf der konvexen Hülle |
Man zeichnet die Delaunay-Kanten als gerade Strecken zwischen den Sites. Sie kreuzen sich nicht (das muss man beweisen, siehe (Ergänzung) unten), die Delaunay-Kante muss die zugehörige Voronoi-Kante aber nicht schneiden.
Liegen nie mehr als drei Punkte auf einem Kreis, ist der Delaunay-Graph eine Triangulierung von und seiner konvexen Hülle, die Delaunay-Triangulierung .
Mit Satz 2 hat sie höchstens Kanten und Dreiecke, und das sind genau die Schranken aus der Euler-Formel für Triangulierungen. Genauer: Bei Hüllpunkten hat jede Triangulierung von genau Dreiecke und Kanten (Ergänzung).
Jeder Voronoi-Knoten ist Mittelpunkt eines leeren Kreises durch ≥ 3 Punkte. Mit „Delaunay“ mit der Maus über ein Dreieck fahren zeigt seinen Umkreis. · Klick setzt Punkt, ziehen verschiebt, Rechtsklick löscht.
Satz 8: Delaunay-Bedingung (Folie 37)
- Drei Punkte gehören genau dann zur selben Fläche des Delaunay-Graphen, wenn ihr Umkreis keinen weiteren Punkt von (im Inneren) enthält. Das ist die Delaunay-Bedingung.
- Zwei Punkte bilden genau dann eine Kante des Delaunay-Graphen, wenn es einen Kreis durch und gibt, der keinen weiteren Punkt von enthält.
Beweis. Direkt aus Satz 3:
- Der leere Umkreis von ist ein größter leerer Kreis mit drei Punkten auf dem Rand. Nach Satz 3.1 ist sein Mittelpunkt ein Voronoi-Knoten, und dual dazu ist ein Delaunay-Dreieck. Der Umkreismittelpunkt ist der Voronoi-Knoten dieses Dreiecks.
- Ein leerer Kreis mit nur auf dem Rand hat seinen Mittelpunkt auf einer Voronoi-Kante zwischen und (Satz 3.2). Dual dazu ist eine Delaunay-Kante. □
Lokale Version (Ergänzung, wichtig für den Algorithmus): Eine Kante mit den angrenzenden Dreiecken und heißt legal, wenn nicht im Umkreis von liegt. Satz: Eine Triangulierung ist genau dann Delaunay, wenn alle Kanten legal sind. Lokale Prüfung reicht also.
Der InCircle-Test (Ergänzung)
Für ein gegen den Uhrzeigersinn orientiertes Dreieck liegt genau dann im Umkreis, wenn
Das ist das Gegenstück zum orient-Test aus Kapitel 1: Hebt man die Punkte auf das Paraboloid , wird „im Kreis“ zu „unter der Ebene durch die drei gehobenen Punkte“. Bei liegen alle vier auf einem Kreis.
Satz 9: Max-Min-Winkel (Folie 38)
Unter allen Triangulierungen von maximiert die Delaunay-Triangulierung den kleinsten Innenwinkel aller Dreiecke.
Deshalb ist sie in der Praxis so beliebt: keine dünnen, spitzen Dreiecke, wo es sich vermeiden lässt. Das ist gut für FEM-Netze und Interpolation.
Beweis (auf den Folien „Übung“, hier nach de Berg, Kap. 9):
- Kantenflip: Zwei Dreiecke und bilden ein Viereck. Ist es konvex, kann man die Diagonale durch ersetzen.
- Satz des Thales / Peripheriewinkelsatz: Liegt im Umkreis von , ist der Winkel bei über der Sehne größer als der Peripheriewinkel. Daraus folgt: Der Flip auf vergrößert den kleinsten der sechs Winkel. Die illegale Kante war also schlechter.
- Winkelvektor: Sortiert man alle Winkel einer Triangulierung aufsteigend, , wird durch jeden Flip einer illegalen Kante lexikographisch größer.
- Es gibt nur endlich viele Triangulierungen. Die mit dem lexikographisch größten Winkelvektor hat also keine illegale Kante mehr und ist nach der lokalen Version von Satz 8 die Delaunay-Triangulierung. Ihr ist maximal. □
In der Demo: Die Statuszeile zeigt den kleinsten Winkel. Verschiebe einen Punkt so, dass ein Dreieck spitz würde. Die Triangulierung „flippt“ lieber eine Kante, als einen kleinen Winkel zu behalten.
„Warum Delaunay und nicht irgendeine Triangulierung?“ → Max-Min-Winkel (Satz 9), eindeutig bei allgemeiner Lage, dual zu Voronoi (also bekommt man beides auf einmal), effizient berechenbar.
Weitere Eigenschaften (Ergänzung)
- Der nächste Nachbar jedes Punktes ist über eine Delaunay-Kante verbunden. Ebenso sind der euklidische minimale Spannbaum (EMST) und der Gabriel-Graph Teilgraphen von .
- Der Rand von ist die konvexe Hülle von .
- Lifting-Abbildung: Die Delaunay-Triangulierung ist die Projektion der unteren konvexen Hülle der auf das Paraboloid gehobenen Punkte. Damit ist Delaunay in 2d „konvexe Hülle in 3d“.
- Nicht kreuzend: Zwei Delaunay-Kanten können sich nicht kreuzen. Sonst hätten beide leere Kreise, und die beiden Kreise müssten jeweils einen Endpunkt der anderen Kante enthalten.