Generative Modelling Language
Die Generative Modelling Language (GML) ist eine Programmiersprache zur Beschreibung dreidimensionaler Formen. Sie folgt dem Paradigma der Generativen Modellierung, bei dem nicht Objekt-Listen, sondern (objekt-erzeugende) Operationen zur DatenreprÀsentation verwendet werden.
Generative Modellierung
[Bearbeiten | Quelltext bearbeiten]Die generative Modellierung ist ein alternativer Ansatz zur Beschreibung von dreidimensionaler Form. Zugrunde liegt die Idee, ein Modell nicht wie ĂŒblich durch eine Ansammlung geometrischer Primitive (Dreiecke, Punkte, NURBS-Patches) zu beschreiben, sondern durch Funktionen. Der Paradigmenwechsel von Objekten zu Geometrie-erzeugenden Operationen ermöglicht es, prozedural aufgebaute Modelle (Stuhl, Autofelge) auch prozedural zu reprĂ€sentieren. Statt nur das Resultat eines 3D-Konstruktionsprozesses zu speichern, kann so der Konstruktionsprozess selber reprĂ€sentiert werden. Der generative Ansatz ermöglicht, auf einen Fundus bereits gelöster Konstruktions-Aufgaben zurĂŒckzugreifen, um sie in Ă€hnlichen, leicht variierten Situationen wiederzuverwenden. Das Konstruktions-Wissen kann dazu in Form von Bibliotheken parametrisierter, DomĂ€nen-spezifischer Modellier-Werkzeuge gesammelt werden.
Die Generative Modelliersprache
[Bearbeiten | Quelltext bearbeiten]Die âGenerative Modeling Language (GML)â ist eine konkrete Realisierung einer generativen Modellbeschreibungs-Sprache. Sie ist eine stack-basierte, interpretierte Programmiersprache, die Ă€hnlich aufgebaut ist wie Adobes PostScript, allerdings ohne Operatoren fĂŒr 2D-Layouts. Stattdessen enthĂ€lt sie eine ganze Reihe von Operatoren fĂŒr den Aufbau von 3D-Modellen (u. a. fĂŒr Polygone, b-Reps, Subdivision Surfaces). Als âProgrammiersprache fĂŒr Formâ stellt sie unter anderem eine echte Verallgemeinerung existierender primitiv-basierter 3D-Modellformate wie OBJ, DXF oder VRML dar.
Zusammen mit ihrer OpenGL-basierten Runtime-Engine erlaubt die GML,
- eine kompakte Beschreibung parametrisierter 3D-Objekte
- die zur Laufzeit on-the-fly ausgewertet werden kann,
- die Darstellung mit adaptivem Level of Detail (LOD),
- und das interaktive VerÀndern der Modell-Parameter.
GML Beispiel
[Bearbeiten | Quelltext bearbeiten]Anwendungen
[Bearbeiten | Quelltext bearbeiten]Bei prozeduralen Modellen hĂ€ngt die ModellgröĂe nicht mehr direkt (d. h. linear) von der DateigröĂe ab. Die âProzedurale Kathedraleâ, ein Grobmodell des Kölner Doms, enthĂ€lt 70 MaĂwerkfenster, in der höchsten Auflösung enthĂ€lt ein einzelnes Fenster rund 7 Millionen Dreiecke. Diese âentfaltenâ sich aus nur 126 kB GML Code (18 kB gezippt).
Gotische Architektur ist ein Beispiel fĂŒr die Reichhaltigkeit der prozeduralen Formgestaltung: In der Gotik wurden sĂ€mtliche Konstruktionen ausschlieĂlich mit Zirkel und Lineal durchgefĂŒhrt. Variationen erhielt man, indem im Grunde sehr einfache parametrische Grundoperationen in immer neuer Weise prozedural kombiniert wurden. Daher ist es praktisch unmöglich, zwei MaĂwerkfenster an unterschiedlichen Bauten zu finden, bei denen die parametrische Konstruktion identisch ist.
Der interaktive CAVE-Designer hilft dabei, eine CAVE in einen kleinen Raum einzupassen. Wegen der UnterzĂŒge ist es schwierig, das Problem nur mit 2D-PlĂ€nen zu lösen (Grundriss, Aufriss). Freiheitsgrade (blaue Pfeile) sind die Position und Orientierung der LeinwĂ€nde und der Ăffnungswinkel der Projektoren.
Ausgehend von 30 gegebenen CAD-Modellen von Autofelgen wurde hier versucht, eine gemeinsame Parametrisierung zu finden, so dass jede einzelne der gegebenen Felgen daraus erzeugt werden kann (âgenerative FlĂ€chenrĂŒckfĂŒhrungâ). Nun lassen sich in dem Design-Raum, der von den Einzelfelgen aufgespannt wird, leicht auch neue, Ă€hnliche Modelle erzeugen.
Die generative Modellierung legt eine Differenzierung zwischen der âStrukturâ und der âErscheinungâ (z. B. dem Stil) eines 3D-Modells nah. Erstaunlich viele Objekte haben die gleiche Struktur wie ein Stuhl, d. h. sind strukturell Ă€hnlich aufgebaut. Im Prinzip erlaubt diese Trennung dann, die âErscheinungâ eines Objektes innerhalb dieser Klasse auf jedes andere zu ĂŒbertragen.
Didaktisches Applet zur Veranschaulichung von Voronoi-Diagrammen. Es geht um die Frage, ob sich die Mittelpunkte der Voronoi-Zellen aus den Grenzen der Regionen ableiten lassen. Das Applet vermittelt die Idee, die dem formalen Beweis zugrunde liegt.
Weblinks
[Bearbeiten | Quelltext bearbeiten]- GML Homepage auf generative-modeling.org
- GML ist entstanden im Rahmen der Dissertation von Sven Havemann an der TU Braunschweig
- Michael Leyton: A Generative Theory of Shape. ErhÀltlich auf seiner Homepage
- John Snyder: Generative Modeling for Computer Graphics and CAD: Symbolic Shape Design Using Interval Analysis. Nicht mehr erhĂ€ltlich, siehe daher die GENMOD-Seite bei Caltech. UrsprĂŒngliche Motivation war dieses Buch.