Formdatenbank
Die Shape-Datenbank dient als allgemeines, lokales Repository für 3D-CAD-Modelle. Die Einträge in der Shape-Datenbank werden als 3D-Netze (oder -Formen) gespeichert und können beispielsweise die raue Oberfläche eines Materials darstellen, das durch AFM-Messungen gewonnen wurde, den komplexen, sechseckigen Kontakt auf einer großflächigen Vorrichtung (siehe ??) oder die periodischen Säulen eines photonischen Kristalls. Formen werden mithilfe von Dreiecksnetzen definiert. Das Shape-Datenbank-Fenster enthält Werkzeuge zum Erstellen neuer 3D-CAD-Modelle aus 2D-Bildern sowie zum Importieren externer Netze aus Wavefront OBJ-Dateien. Entscheidend ist, dass alle Formen in dieser Datenbank dauerhaft auf der Festplatte gespeichert werden und dazu dienen, komplexere Geometrien darzustellen als die, die vom Netz-Editor generiert werden, der sich auf einfache geometrische Primitive wie Quader, Zylinder und Kugeln konzentriert (siehe CAD-Netze).
Zugriff auf die Datenbank
Formen werden in der Formdatenbank gespeichert, auf die über die Registerkarte „Datenbank“ und das Symbol „Formen“ zugegriffen werden kann (siehe ??). Durch Klicken auf das Symbol der Formdatenbank wird das Fenster „Formdatenbank“ geöffnet (??).
Versuchen Sie, einige der Formen zu öffnen, um sie genauer zu betrachten. Sie sehen ein Fenster, das dem in ?? ähnelt. Dieses Beispiel zeigt eine wabenförmige Kontaktstruktur einer Solarzelle. Auf der linken Seite sehen Sie die dreidimensionale Form, und auf der rechten Seite das zweidimensionale Bild, das zur Erstellung der Form verwendet wurde. Über das zweidimensionale Bild wird eine zx-Projektion des dreidimensionalen Gitters gelegt. Sie können dieses zweidimensionale Gitter ein- und ausschalten, indem Sie den entsprechenden Schalter in der oberen Symbolleiste betätigen.
Erstellung eines Netzes
Sobald das Fenster der Formdatenbank geöffnet ist, können Sie jede gespeicherte Form anzeigen und bearbeiten. Viele der in der Datenbank enthaltenen Formen wurden ursprünglich aus 2D-Bildern mithilfe der integrierten Diskretisierungswerkzeuge erstellt. In diesem Abschnitt wird erläutert, wie dieser Prozess funktioniert. Öffnen Sie morphology/1 in der Formdatenbank. Es wird ein Fenster angezeigt, das ?? ähnelt. Die linke Seite zeigt das resultierende 3D-Dreiecksnetz, während die rechte Seite das ursprüngliche 2D-Bild anzeigt, aus dem das Netz generiert wurde. Mit der Schaltfläche „Netz anzeigen“ in der Registerkarte „Datei“ können Sie die Überlagerung des Netzes auf dem 2D-Bild ein- und ausschalten, um zu sehen, wie die Triangulierung den darunter liegenden Strukturen folgt.
Um zu ändern, wie das Bild in ein 3D-Modell umgewandelt wird, klicken Sie im Menüband „Datei“ auf „Modell bearbeiten“. Dadurch wird das Dialogfeld zur Modellkonfiguration (??) geöffnet, in dem Sie die Detailgenauigkeit einstellen können.
Die wichtigsten Parameter sind:
- x-Dreiecke – maximale Anzahl von Dreiecken in horizontaler Richtung
- y-Dreiecke – maximale Anzahl von Dreiecken in vertikaler Richtung
- Methode – legt fest, wie das Netz erstellt wird.
- Mindestwert für den Winkel – verhindert die Bildung von extrem schmalen, instabilen Dreiecken.
Als Beispiel: Reduzieren Sie sowohl die x-Dreiecke als auch die y-Dreiecke auf 40 und klicken Sie dann auf „Netz erstellen“. Das resultierende Netz enthält weniger Dreiecke und ist daher weniger detailliert, lässt sich aber schneller bearbeiten. Diese Reduzierung ist sofort in den 2D- und 3D-Vorschauen sichtbar.
Die Methode bestimmt, wie Dreiecke generiert werden:
- Keine Reduzierung: Erzeugt ein gleichmäßiges, regelmäßiges Dreiecksraster. Dies führt zu einer sehr genauen Geometrie, erzeugt aber eine große Anzahl von Dreiecken.
- Knotenreduktion: Beginnt mit einem regulären Raster und entfernt anschließend unnötige Punkte, um die Anzahl der Dreiecke zu reduzieren, wobei die Gesamtform erhalten bleibt.
Wenn Sie von „No reduce“ auf „rebuild mesh“ umstellen, wird das adaptive Netz durch eine vollständige, reguläre 70 × 70-Triangulation ersetzt. Dies ist zwar präziser, erfordert aber auch mehr Speicherplatz und Rechenleistung. Jedes zusätzliche Dreieck in einem Netz erhöht die Rechenlast in einer Simulation. Das Ziel beim Erstellen eines Netzes ist daher, die Form mit so wenigen Dreiecken wie möglich darzustellen. Wenn Sie eine gesamte Oberfläche mit einer relativ geringen Anzahl von Dreiecken beschreiben können, ist dies in der Regel sinnvoll. Bei sehr regelmäßigen Formen kann die Anwendung von „Node reduce“ zur Reduzierung der Dreieckanzahl jedoch wenig oder gar keinen Vorteil bringen; in solchen Fällen kann ein einfaches, reguläres Netz genauso effektiv sein. In der Praxis müssen Sie oft mit verschiedenen Einstellungen und Methoden experimentieren, um ein Netz zu finden, das ein akzeptables Gleichgewicht zwischen Genauigkeit und Rechenaufwand bietet.
Tools zur Erstellung und Bearbeitung von 2D-Bildern
Zusätzlich zum Laden von Bildern aus einer Datei enthält der Formeneditor eine Reihe von Werkzeugen zum Erstellen neuer 2D-Muster, die in 3D-Netze umgewandelt werden können. Diese Werkzeuge befinden sich unter der Registerkarte „2D-Bild“ und umfassen Generatoren für eine Vielzahl von Strukturen:
- Wabenmuster für Pixelanordnungen oder Elektrodenraster
- Photonische Kristallgitter mit einstellbarer Periodizität
- Linsen, die als Höhenkarten definiert sind
- Gaußsche Profilfunktionen für Unebenheiten, Vertiefungen oder geneigte Oberflächen
- Funktionen zur Berechnung der Wellenhöhe (ein Beispiel ist unten dargestellt)
- Schachbrettmuster für die Kalibrierung und das Testen
- Perlin-Rauschen zur Erzeugung realistischer Oberflächenrauheit
Jeder Generator bietet eigene Konfigurationsoptionen, mit denen Sie die Geometrie anpassen können, bevor diese in ein Netz umgewandelt wird. Diese Bilder dienen als Höhenkarten oder Masken, aus denen der Formeditor die entsprechende 3D-Struktur erstellt.
Nachdem ein Bild erstellt oder geladen wurde, bietet die Registerkarte „Filter“ verschiedene Werkzeuge, mit denen das Bild bearbeitet werden kann, bevor die Netzstruktur erstellt wird. Dazu gehören:
- Weichzeichnen – reduziert Bildrauschen oder glättet scharfe Übergänge.
- Normalisieren (x, y, z) – skaliert das Bild in jeder Richtung neu.
- Schwellenwert – wandelt das Bild in eine binäre Maske um (ein Beispiel ist oben dargestellt).
- Drehen – dreht das Muster um einen festen oder beliebigen Winkel.
- Kontur – hebt Konturen im Bild hervor oder extrahiert sie.
Mit diesen Werkzeugen können Sie Höhenkarten verfeinern, verrauschte Bilder bereinigen oder Muster bearbeiten, bevor Sie das endgültige dreieckige Netz generieren. Die Kombination aus Bildgeneratoren und Filtern bietet einen flexiblen Arbeitsablauf für die Erstellung komplexer, benutzerdefinierter 3D-Geometrien direkt in OghmaNano.
Importieren aus CAD-Dateien
Zusätzlich zur Erstellung von Formen aus 2D-Bildern ermöglicht der Formeneditor auch das Importieren externer 3D-Modelle mithilfe der Schaltfläche „CAD-Datei importieren“, die in ?? dargestellt ist. OghmaNano unterstützt das Format Wavefront OBJ, das häufig zum Speichern von triangulierten Oberflächenmodellen verwendet wird. In der Formdatenbank finden Sie außerdem ein Beispiel für ein importiertes CAD-Modell: die klassische Utah-Teekanne, die in ?? dargestellt ist. Dieses Modell veranschaulicht, wie externe, triangulierte Modelle aussehen, nachdem sie in den Editor importiert wurden.
Beim Importieren von CAD-Modellen ist es wichtig sicherzustellen, dass das Netz eine geschlossene Oberfläche bildet. Eine geschlossene Oberfläche ist dadurch gekennzeichnet, dass jede Kante genau zwei Dreiecken zugeordnet ist, wodurch ein vollständig abgedichtetes, wasserdichtes Volumen entsteht. Offene Oberflächen, fehlende Flächen oder Risse führen zu Unklarheiten bei der Bestimmung, ob sich Punkte innerhalb oder außerhalb des Objekts befinden, was sie für Simulationen ungeeignet macht.
CAD-Netze werden in der Regel für die Bearbeitung und Herstellung und nicht für numerische Simulationen konzipiert. Daher enthalten sie oft deutlich mehr Dreiecke, als für optische oder physikalische Modellierungen erforderlich wären. Eine große Anzahl von Dreiecken erhöht die Rechenzeit beim Raytracing und bei anderen Berechnungsverfahren erheblich.
Um die bestmögliche Leistung zu erzielen, stellen Sie sicher, dass die importierten 3D-Modelle folgende Kriterien erfüllen:
- bilden eine vollständig geschlossene, wasserdichte Oberfläche.
- enthalten Sie nur so viele Dreiecke, wie zur Darstellung der Geometrie erforderlich sind, und
- entfernen Sie unnötige feine Details oder Bearbeitungsspuren.
Die Einhaltung dieser Richtlinien trägt dazu bei, dass importierte CAD-Geometrien in OghmaNano effizient funktionieren.
Das Shapefile-Format
Eine Form muss ein vollständig geschlossenes Volumen bilden. Wenn Sie den integrierten Form-Diskrepanisierer verwenden, wird diese Bedingung automatisch erfüllt. Wenn Sie jedoch Formen manuell erstellen, müssen Sie sicherstellen, dass das Volumen geschlossen ist.
In jedem Verzeichnis für Formen befinden sich die folgenden Dateien:
| Dateiname | Beschreibung | |
|---|---|---|
| \(data.json\) | Konfigurationsdaten für die Form. | |
| \(image\_original.png\) | Sicherungskopie des importierten Bildes. | |
| \(image\_out.png\) | Das endgültige, bearbeitete Bild. | |
| \(image.png\) | Die Arbeitskopie des importierten Bildes. | |
| \(shape.inp\) | Das diskretisierte 3D-Gitter der Form. |
Die PNG-Dateien stellen das Bild in verschiedenen Verarbeitungsstufen dar. Die Datei data.json speichert die Konfiguration des Formeneditors, und die Datei shape.inp enthält die 3D-Struktur des Objekts.
Ein Beispiel für eine shape.inp-Datei ist in ?? dargestellt. Das Format ist so gestaltet, dass gnuplot die Datei direkt mit dem Befehl splot öffnen kann. Jedes Dreieck wird durch vier z, x, y-Punkte beschrieben: Die ersten drei Zeilen definieren das Dreieck, und die vierte Zeile wiederholt den ersten Punkt, sodass gnuplot eine geschlossene Umrandung zeichnen kann. Die Anzahl der Dreiecke in der Datei wird in einer Zeile definiert, die mit #y beginnt.
Die genauen Werte der z, x, y-Parameter sind nicht entscheidend. Sobald die Form geladen ist, werden alle Werte normalisiert, sodass der niedrigste Punkt der Form bei (0, 0, 0) und der höchste Punkt bei (1, 1, 1) liegt. Wenn die Form in eine Szene eingefügt wird, wird sie erneut normalisiert, um die gewünschte physische Größe des Objekts im Gerät zu erreichen.
shape.inp-Datei. Jedes Dreieck wird durch vier z, x, y-Punkte definiert und kann mithilfe von gnuplot direkt visualisiert werden.👉 Nächster Schritt: Ein Beispiel dafür, wie Formen erstellt werden können, finden Sie in der Anleitung zur Formdatenbank und darin, wie Sie aus Bildern dreidimensionale Formen erstellen können. Den Link dazu finden Sie hier: dieser Link.