Zum Inhalt springen

Generative Modelling Language

aus Wikipedia, der freien EnzyklopÀdie

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.
1:   (0,0,−2) (1,1,0) 2 quad
2:/cyan setcurrentmaterial
5 poly2doubleface
3:(0,1,1) extrude
4:(0,0,1) (1,0,1) normalize
0 project_ringplane
5:(2,0,0) (0,1,−1) 2 quad
6:/yellow setcurrentmaterial
5 poly2doubleface
7:0 bridgerings
 

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.

  • 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.