Triangulation von Delaunay

In der Mathematik und rechenbetonten Geometrie ist eine Triangulation von Delaunay für einen Satz P Punkte in einem Flugzeug eine Triangulation DT (P) solch, dass nichts in P innerhalb des circumcircle jedes Dreiecks in Triangulationen von DT (P). Delaunay ist, maximieren den minimalen Winkel aller Winkel der Dreiecke in der Triangulation; sie neigen dazu, dünne Dreiecke zu vermeiden. Die Triangulation wird nach Boris Delaunay für seine Arbeit an diesem Thema von 1934 genannt.

Für eine Reihe von Punkten auf derselben Linie gibt es keine Triangulation von Delaunay (der Begriff der Triangulation ist für diesen Fall degeneriert). Für vier oder mehr Punkte auf demselben Kreis (z.B die Scheitelpunkte eines Rechtecks) ist die Triangulation von Delaunay nicht einzigartig: Jede der zwei möglichen Triangulationen, die das Viereck in zwei Dreiecke spalten, befriedigt die "Bedingung von Delaunay", d. h., die Voraussetzung, dass die circumcircles aller Dreiecke leeres Innere haben.

Mit FEM/BEM kommt zunehmende Beliebtheit der Ansporn, automatische verwickelnde Algorithmen zu verbessern. Jedoch können alle diese Algorithmen verdrehte und sogar unbrauchbare Bratrost-Elemente schaffen. Glücklich bestehen mehrere Techniken, der ein vorhandenes Ineinandergreifen nehmen und seine Qualität verbessern kann. Zum Beispiel ist Glanzschleifen (auch gekennzeichnet als Ineinandergreifen-Verbesserung) eine solcher Methoden, der Wiederpositionen Knotenpositionen, um Element-Verzerrung zu minimieren. Die Gestreckte Bratrost-Methode (SGM) erlaubt das Erreichen des pseudoregelmäßigen Ineinandergreifens, das den Kriterien von Delaunay sehr leicht und schnell in einer schrittweisen Lösung entspricht.

Durch das Betrachten von umschriebenen Bereichen streckt sich der Begriff der Triangulation von Delaunay bis zu drei und höhere Dimensionen aus. Generalisationen sind zur Metrik außer Euklidisch möglich. Jedoch in diesen Fällen, wie man versichert, besteht eine Triangulation von Delaunay nicht oder ist nicht einzigartig.

Beziehung mit dem Diagramm von Voronoi

Die Delaunay Triangulation eines getrennten Punkts ist untergegangen P in der allgemeinen Position entspricht dem Doppelgraphen von Voronoi tessellation für P. Spezielle Fälle schließen die Existenz von drei Punkten auf einer Linie und vier Punkten auf dem Kreis ein.

File:Delaunay_circumcircles_centers.svg|The Delaunay Triangulation mit dem ganzen circumcircles und ihren Zentren (im Rot).

Image:Delaunay_Voronoi.png|Connecting die Zentren des circumcircles erzeugt das Diagramm von Voronoi (im Rot).

</Galerie>

d-dimensional Delaunay

Für einen Satz P Punkte im (d-dimensional) Euklidischen Raum ist eine Triangulation von Delaunay eine Triangulation DT (P) solch, dass nichts in P innerhalb des Circum-Hyperbereichs jedes Simplexes in DT (P) ist. Es ist bekannt, dass dort eine einzigartige Triangulation von Delaunay für P besteht, wenn P eine Reihe von Punkten in der allgemeinen Position ist; d. h. dort besteht keine K-Wohnung, die k + 2 Punkte noch ein K-Bereich enthält, der k + 3 Punkte, für 1  k  d &minus enthält; 1 (z.B, für eine Reihe von Punkten darin; keine drei Punkte sind auf einer Linie, keinen vier auf einem Flugzeug, keine vier sind auf einem Kreis und keinen fünf auf einem Bereich).

Das Problem, die Triangulation von Delaunay von einer Reihe von Punkten im d-dimensional Euklidischen Raum zu finden, kann zum Problem umgewandelt werden, den konvexen Rumpf von einer Reihe von Punkten in (d + 1) - dimensionaler Raum zu finden, indem es jeden Punkt p eine |p gleiche Extrakoordinate gegeben wird, die unterste Seite des konvexen Rumpfs nehmend, und zurück zum d-dimensional Raum durch das Löschen der letzten Koordinate kartografisch darstellend. Da der konvexe Rumpf einzigartig ist, auch ist die Triangulation, annehmend, dass alle Seiten des konvexen Rumpfs simplices sind. Seiten von Nonsimplicial kommen nur vor, wenn d + 2 der ursprünglichen Punkte auf demselben D-Hyperbereich liegen, d. h. die Punkte sind nicht in der allgemeinen Position.

Eigenschaften

Lassen Sie n die Zahl von Punkten und d die Zahl von Dimensionen sein.

  • Die Vereinigung des ganzen simplices in der Triangulation ist der konvexe Rumpf der Punkte.
  • Die Delaunay Triangulation enthält O (n) simplices.
  • Im Flugzeug (d = 2), wenn es b Scheitelpunkte auf dem konvexen Rumpf gibt, dann hat jede Triangulation der Punkte höchstens 2n &minus; 2 &minus; b Dreiecke, plus ein Außengesicht (sieh Eigenschaft von Euler).
  • Im Flugzeug hat jeder Scheitelpunkt auf durchschnittlichen sechs Umgebungsdreiecken.
  • Im Flugzeug maximiert die Triangulation von Delaunay den minimalen Winkel. Im Vergleich zu jeder anderen Triangulation der Punkte ist der kleinste Winkel in der Triangulation von Delaunay mindestens so groß wie der kleinste Winkel in irgendwelchem anderer. Jedoch minimiert die Triangulation von Delaunay den maximalen Winkel nicht notwendigerweise.
  • Ein Kreis, der jedes Dreieck von Delaunay umschreibt, enthält keine anderen Eingangspunkte in seinem Interieur.
  • Wenn ein Kreis, der zwei der Eingangspunkte durchführt, keinen andere von ihnen in seinem Interieur enthält, dann ist das Segment, das die zwei Punkte verbindet, ein Rand einer Triangulation von Delaunay der gegebenen Punkte.
  • Jedes Dreieck der Triangulation von Delaunay von einer Reihe von Punkten in d-dimensional Räumen entspricht einer Seite des konvexen Rumpfs des Vorsprungs der Punkte auf (d + 1) - dimensionaler paraboloid, und umgekehrt.
  • Der nächste Nachbarb zu jedem Punkt p ist an einem Rand bp in der Triangulation von Delaunay, da der nächste Nachbargraph ein Subgraph der Triangulation von Delaunay ist.

Delaunay Sehdefinition: Das Schnipsen

Von den obengenannten Eigenschaften entsteht eine wichtige Eigenschaft: Das Aussehen an zwei Dreiecken ABD und BCD mit dem allgemeinen Rand BD (sieh Zahlen), wenn die Summe der Winkel α und γ weniger ist als oder gleich 180 °, die Dreiecke, entspricht die Bedingung von Delaunay.

Das ist ein wichtiges Eigentum, weil es den Gebrauch einer schnipsenden Technik erlaubt. Wenn zwei Dreiecke die Bedingung von Delaunay nicht entsprechen, den allgemeinen Rand BD für den allgemeinen Rand schaltend, AC erzeugt zwei Dreiecke, die wirklich die Bedingung von Delaunay entsprechen:

Image:Delaunay_geometry.png|This Triangulation entspricht die Bedingung von Delaunay nicht (die Summe von α, und γ ist größer als 180 °).

Image:Delaunay_before_flip.png|This Triangulation entspricht die Bedingung von Delaunay nicht (die circumcircles enthalten mehr als drei Punkte).

Image:Delaunay_after_flip.png|Flipping der allgemeine Rand erzeugt eine Triangulation von Delaunay für die vier Punkte.

</Galerie>

Algorithmen

Viele Algorithmen, für Triangulationen von Delaunay zu schätzen, verlassen sich auf schnelle Operationen wegen zu entdecken, wenn ein Punkt innerhalb eines circumcircle eines Dreiecks und einer effizienten Datenstruktur ist, um Dreiecke und Ränder zu versorgen. In zwei Dimensionen eine Weise zu entdecken, wenn Punkt D im circumcircle von A, B liegt, soll C die Determinante bewerten:

:

A_x & A_y, & A_x^2 + A_y^2, & 1 \\[6pt]

B_x & B_y, & B_x^2 + B_y^2, & 1 \\[6pt]

C_x & C_y, & C_x^2 + C_y^2, & 1 \\[6pt]

D_x & D_y, & D_x^2 + D_y^2, & 1

\end {vmatrix} = \begin {vmatrix }\

A_x - D_x, & A_y - D_y, & (A_x^2 - D_x^2) + (A_y^2 - D_y^2) \\[6pt]

B_x - D_x, & B_y - D_y, & (B_x^2 - D_x^2) + (B_y^2 - D_y^2) \\[6pt]

C_x - D_x, & C_y - D_y, & (C_x^2 - D_x^2) + (C_y^2 - D_y^2)

\end {vmatrix}> 0

</Mathematik>

Wenn A, B und C in gegen den Uhrzeigersinn Ordnung sortiert werden, ist diese Determinante positiv, wenn, und nur wenn D innerhalb des circumcircle liegt.

Flip-Algorithmen

Wie oben erwähnt, wenn ein Dreieck non-Delaunay ist, können wir einen seiner Ränder schnipsen. Das führt zu einem aufrichtigen Algorithmus: Bauen Sie jede Triangulation der Punkte, und dann Flip-Ränder, bis kein Dreieck non-Delaunay ist. Leider kann das O (n) Rand-Flips nehmen, und streckt sich bis zu drei Dimensionen oder höher nicht aus.

Zusätzlich

Der aufrichtigste Weg, effizient die Triangulation von Delaunay zu schätzen, soll einen Scheitelpunkt auf einmal wiederholt hinzufügen, die betroffenen Teile des Graphen wiedertriangulierend. Wenn ein Scheitelpunkt v hinzugefügt wird, spalten wir uns in drei das Dreieck auf, das v enthält, dann wenden wir den Flip-Algorithmus an. Getan naiv wird das O (n) Zeit nehmen: Wir durchsuchen alle Dreiecke, um dasjenige zu finden, das v, dann wir potenziell Flip weg jedes Dreieck enthält. Dann ist die gesamte Durchlaufzeit O (n).

Wenn wir Scheitelpunkte in die zufällige Ordnung einfügen, erweist es sich (durch einen etwas komplizierten Beweis), den jede Einfügung, durchschnittlich, nur O (1) Dreiecke schnipsen wird - obwohl manchmal es noch viele schnipsen wird.

Das verlässt noch die Punkt-Positionszeit, um sich zu verbessern. Wir können die Geschichte der Spalte und durchgeführten Flips versorgen: Jedes Dreieck versorgt einen Zeigestock zu den zwei oder drei Dreiecken, die es ersetzt haben. Um das Dreieck zu finden, das v enthält, fangen wir an einem Wurzeldreieck an, und folgen dem Zeigestock, der zu einem Dreieck hinweist, das v enthält, bis wir ein Dreieck finden, das noch nicht ersetzt worden ist. Durchschnittlich wird das auch O nehmen (loggen Sie n) Zeit. Über alle Scheitelpunkte, dann, nimmt das O (n loggen n) Zeit. Während sich die Technik bis zu die höhere Dimension ausstreckt (wie bewiesen, durch Edelsbrunner und Shah), kann die Durchlaufzeit in der Dimension Exponential-sein, selbst wenn die Endtriangulation von Delaunay klein ist.

Der Algorithmus von Bowyer-Watson stellt eine andere Annäherung für den zusätzlichen Aufbau zur Verfügung. Es gibt eine Alternative, um das Schnipsen zu umsäumen, für die Dreiecke von Delaunay zu schätzen, die einen kürzlich eingefügten Scheitelpunkt enthalten.

Teilen Sie sich und siegen Sie

Ein Teilen und siegt der Algorithmus für Triangulationen in zwei Dimensionen ist wegen Lees und Schachters, der von Guibas und Stolfi und später von Dwyer verbessert wurde. In diesem Algorithmus zieht man rekursiv eine Linie, um die Scheitelpunkte in zwei Sätze zu spalten. Die Delaunay Triangulation wird für jeden Satz geschätzt, und dann werden die zwei Sätze entlang der zerreißenden Linie verschmolzen. Mit einigen klugen Tricks kann die Verflechtungsoperation rechtzeitig O (n) getan werden, so ist die Gesamtlaufzeit O (n, loggen n).

Für bestimmte Typen von Punkt-Sätzen, wie ein gleichförmiger zufälliger Vertrieb, durch die intelligente Auswahl des Aufspaltens stellt sich auf die erwartete Zeit kann auf O reduziert werden (n Klotz loggen n), während man noch Grenzfall-Leistung aufrechterhält.

Ein Teilen und siegt das Paradigma zum Durchführen einer Triangulation in d Dimensionen wird in "DeWall präsentiert: Ein schneller teilt und überwindet Triangulationsalgorithmus von Delaunay in E" durch P. Cignoni, C. Montani, R. Scopigno.

Teilen Sie sich und siegen Sie ist gezeigt worden, die schnellste DT Generationstechnik zu sein.

Sweepline

Der Algorithmus des Glückes verwendet eine sweepline Technik, um O zu erreichen (n loggen n) die Durchlaufzeit im planaren Fall.

Sweephull

Sweephull ist eine schnelle hybride Technik für die 2. Triangulation von Delaunay, die einen sich radial fortpflanzenden Kehren-Rumpf verwendet (folgend geschaffen von

der radial sortierte Satz von 2. Punkten, eine nichtüberlappende Triangulation gebend), paarweise angeordnet mit einem nal wiederholenden Dreieck ipping Schritt.

Empirische Ergebnisse zeigen die Algorithmus-Läufe in der ungefähr Hälfte der Zeit von Qhull an, und freie Durchführungen in C ++ und C# sind verfügbar.

Anwendungen

Der Euklidische minimale Überspannen-Baum von einer Reihe von Punkten ist eine Teilmenge der Triangulation von Delaunay derselben Punkte, und das kann ausgenutzt werden, um es effizient zu schätzen.

Um Terrain oder andere Gegenstände gegeben eine Reihe von Beispielpunkten zu modellieren, gibt die Triangulation von Delaunay einen netten Satz von Dreiecken, um als Vielecke im Modell zu verwenden. Insbesondere die Triangulation von Delaunay vermeidet schmale Dreiecke (weil sie großen circumcircles im Vergleich zu ihrem Gebiet haben). Sieh trianguliertes unregelmäßiges Netz.

Triangulationen von Delaunay können verwendet werden, um die Dichte oder Intensität von Punkten samplings mittels des DTFE zu bestimmen.

Triangulationen von Delaunay werden häufig verwendet, um Ineinandergreifen für das Raum-Discretised solvers wie die begrenzte Element-Methode und die begrenzte Volumen-Methode der Physik-Simulation wegen der Winkelgarantie zu bauen, und weil schnelle Triangulationsalgorithmen entwickelt worden sind. Gewöhnlich wird das zu verwickelnde Gebiet als ein rauer simplicial Komplex angegeben; für das Ineinandergreifen, um numerisch stabil zu sein, muss es, zum Beispiel durch das Verwenden des Algorithmus von Ruppert raffiniert werden.

Siehe auch

  • Beta-Skelett
  • Beschränkte Delaunay Triangulation
  • Feldvorkalkulator von Delaunay tessellation
  • Graph von Gabriel
  • Anstieg-Muster-Analyse
  • Triangulation von Pitteway
  • Graph von Urquhart
  • Diagramm von Voronoi

Außenverbindungen

  • Triangulation von Delaunay in CGAL, der Rechenbetonten Geometrie-Algorithmus-Bibliothek:
  • - Code für konvexen Rumpf, Delaunay Triangulation, Voronoi Diagramm und Halbraumkreuzung
  • - Two-Dimensional Quality Mesh Generator und Delaunay Triangulator
  • - Ein C ++ Streifband auf dem Dreieck
  • - Eine sweepline Bibliothek von Constrained Delaunay Triangulation (CDT), die in ActionScript 3, C, C ++, C# verfügbar ist, Geht Java, Javascript, Pythonschlange und Ruby

Source is a modification of the Wikipedia article Delaunay triangulation, licensed under CC-BY-SA. Full list of contributors here.
Nachsynchronisation (der Filmherstellung) / Angeklagter
Impressum & Datenschutz