VIS- und Uni-Logo
Blindversion home uni university suche search sitemap sitemap kontakt contact
unilogo University of Stuttgart
Institute for Visualization and Interactive Systems

AutoOpt - Voxel-basierter Ansatz

german VersionPrintversionBlind Version
 

Sorry, this document is only available in German.

Klassischerweise sind Operationen auf Finiten-Element-Modellen netzgebunden, also abhängig von der jeweiligen Vernetzung des Modells. In manchen Situationen sind aber Operationen unabhängig von der Vernetzung wünschenswert, wie zum Beispiel vernetzungsunabhängige Modellvergleiche oder grobskalige Editiervorgänge. Um hierfür eine Basis bereitzustellen wurde ein voxel-basierter Ansatz gewählt: FE-Modelle können in ein Distanzvolumen umgewandelt werden auf dessen Basis dann die gewünschten Operationen ausgefürt werden können. Anschließend kann das Modell wieder in Form einer Isofläche extrahiert und weiterbearbeitet werden.
Volumendarstellung
Abbildung 1: Volumendarstellung eines Bauteils

Erzeugen des Distanzvolumens

Zur Erzeugung des Distanzvolumens wird die Bounding Box des Modells (Bauteils) in quaderförmige Voxel aufgeteilt. Die Anzahl der Voxel richtet sich dabei nach der gewünschten Größe der später zu rekonstruierenden Finiten Elemente. Im Anschluss wird für jedes Voxel der kürzeste Abstand zur Bauteiloberfläche berechnet und abgespeichert. Um später eine bessere Extraktion der Isofläche zu ermöglichen wird hierbei noch unterschieden wo auf der Bauteiloberfläche der dem Voxel nächste Punkt liegt: Im Inneren eines Elements, auf einer sichtbaren Bauteilkante oder auf dem Rand des Bauteils (ggf. auf einer Ecke des Randes). Diese Information wird mit abgespeichert. Idealerweise ist der Abstandsvektor zwischen Bauteil und Voxel normal zur Bauteiloberfläche. Weicht die Richtung des Vektors zu weit von der Normalen ab wird die Distanz des Voxels auf einen ungültigen Wert gesetzt und dieses Voxel bei der Rekonstruktion der Fläche zu ignorieren. Hierdurch ist es möglich auch kleine Charakteristika der Fläche, wie z.B. kleine Löcher, zu erhalten (siehe Ausschnitt in Abbildung 1). Ein Beispiel einer Volumendarstellung eines Modells ist in Abbildung 1 gezeigt.

Verarbeitung des Distanzvolumens

Hat man das Distanzvolumen erzeugt können auf dieser basis diverse Operationen ausgeführt werden. Möchte man beispielsweise zwei unterschiedlich vernetzte Modelle miteinander vergleichen, kann man beide Modelle mit gleicher Voxelgröße voxelisieren und die resultierenden Volumen vergleichen, ebenso mit eventuell unterschiedlich editierten Modellen.
Möchte man ein Bauteil grobskalig editieren, so ist dies auch in dieser Darstellung möglich, da auf die Gitterqualität keine Rücksicht genommen werden muss.

Extraktion der Isofläche

Um nach den im vorigen Abschnitt beschriebenen Operationen wieder ein für die Simulation geeignetes FE-Gitter zu erhalten muss die im Volumen kodierte Isofläche wieder extrahiert werden. Klassischerweise geschieht dies mit dem Marching Cubes Algorithmus, der aber leider den Nachteil birgt, Dreiecksnetze mit zumeist schlechter Elementqualität zu generieren. Für FE-basierte Simulationen wie hier im Projekt werden aber vierecksdominierte Netze benötigt. Der kleine Umweg über das duale Netz ermöglichte es uns ein solches Netz zu generieren. Dennoch birgt auch diese Methode Probleme, wie zum Beispiel falsch orientierte Vierecke (Rhombi) und auswaschen scharfer Bauteilkanten. Durch Einführen geeigneter Kontrollmechanismen und Nachbearbeitungsschritte konnten aber auch diese Probleme weitgehend behoben werden (siehe Abbildung 2).
Rekonstruiertes Gitter als
      duales Gitter Relaxiertes Netz Relaxiertes Netz
Abbildung 2a: Als duales Gitter extrahiertes FE-Gitter Abbildung 2b: FE-Gitter nach Entfernung der Rauten Abbildung 2c: Extrahiertes und optimiertes FE-Gitter