Aufgabenstellung:
Entwicklung eines CAD-Programms in C++ und OpenGL
Zeitraum:
Wintersemester 2008/09

Die letzte noch offene Studienleistung an der WHZ war die Programmierung eines einfachen CAD-Programms. Dieses sollte objektorientierten Programmierkonzepten folgen und die Eingabe, Speicherung, graphische Darstellung und Manipulation von Linien und Kreisen ermöglichen. Als Transformationen waren Translation, Drehung und Skalierung (jeweils bezüglich eines Basispunktes) sowie die Spiegelung an einer Geraden vorzusehen.

Der objektorientierte Ansatz sah die Festlegung einer Klassenstruktur mit einer abstrakten Basisklasse für die geometrischen Objekte vor. Diese stellt virtuelle Methoden für die Transformationen bereit und ist serialisierbar. Die einzelnen Geometrieobjekte sollten in einer dynamischen Liste als Datenbasis abgelegt werden.

Die Transformationen selbst werden in der Klasse „Punkt“ vorgenommen und werden für die einzelnen Referenzpunkte der Geometrieobjekte aufgerufen. Komplexe Transformationen sollten dabei aus elementaren Transformationen zusammengesetzt werden.

Zeichenbefehle waren grundsätzlich über die Maus zu realisieren. Gegenenfalls sollte ein Dialogfeld zur Eingabe der Geometriedaten bereitgestellt werden.