next up previous contents
Next: Räumliche Zugriffsmethoden Up: 3D-Datenstrukturen Previous: Dreiecksnetze

Tetraedernetze

 

Wie die Datenstruktur der Dreiecksnetze bauen auch die unregelmäßigen Tetraedervermaschungen in der Klasse gtTetraNet auf ihren Primitiven, den 3-Simplexen (Tetraeder) auf und nutzen diese als Grundbaustein von Tesselationen der zu repräsentierenden Volumina. Die so entstehenden Tetraedernetze stellen simpliziale 3-Komplexe dar, welche jedoch wieder einer Nebenbedingung unterliegen:


Aussagen über den Zusammenhang werden also auch hier nicht gemacht, so daß Tetraedernetze im allgemeinen aus mehreren Komponenten bestehen können. Zudem sind wiederum Hohlräume innerhalb der Netze erlaubt. Obige Einschränkung verbietet allerdings abstehende oder isolierte Dreiecke und Segmente, sowie einzelne Punkte. Abbildung 4.3 zeigt hierzu ein Beispiel. Auf Einschränkungen, die im Rahmen dieser Arbeit für Dreiecks- und Tetraedernetze einzuhalten sind, wird in Kapitel 5 im Rahmen des Entwurfs eingegangen.

  figure3069

Wie auch in der Klasse gtTriangleNet werden bei Objekten des Typs gtTetraNet benachbarte Tetraeder direkt über Nachbarschaftszeiger referenziert. Jeder Tetraeder hat maximal 4 Nachbarn, zu denen Verweise in Beziehung zu dem entsprechenden Randdreieck vorgehalten werden. Vorteile dieser Modellierung grundlegender topologischer Informationen wurden schon im letzten Abschnitt angegeben - diese werden im weiteren Verlauf der Arbeit noch aufgegriffen, da sie in diesem Zusammenhang sehr wichtig sind.

Die Operationen, welche auf Volumina bzw. deren GEOTOOLKIT-Darstellung als Tetraedernetze angeboten werden, beschränken sich auf nur ein topologisches Prädikat (intersects), mit dem ein Schnittest durchgeführt werden kann. Die weiteren Funktionalitäten liegen jedoch ausnahmslos bei den rein geometrischen Algorithmen (ohne direkten topologischen Informationsgehalt).

Konsistenztests ermöglichen innerhalb dieser Klasse die Überprüfung von Zusammenhang oder Selbstschnitt und können entweder automatisch bei der Generierung von Tetraedernetzen oder bei Bedarf aufgerufen werden. Auch in der Klasse gtTetraNet sind zudem import- und export-Filter für VRML enthalten.

Es stehen copy- und cut-Operatoren zur Verfügung, die auf bestimmten Bereichen der Tetraedernetze arbeiten. Hierzu wird ebenso der Konstrukt der Bounding-Box (vgl. 4.4.1) verwendet, wie für schnelle räumliche Bereichsanfragen anhand der in 4.4.2 vorzustellenden Zugriffsmethode des R-Baumes.


next up previous contents
Next: Räumliche Zugriffsmethoden Up: 3D-Datenstrukturen Previous: Dreiecksnetze

Stefan Hecht
Thu Aug 26 14:06:24 MET DST 1999