background image
2.1 Das Programm PointMesh
Mit dem Programm PointMesh ist ein Werkzeug entstanden, das eine einfache und intuitive
Bearbeitung von Punktwolkendaten ermöglicht. Seit August 2006 ist dieses Programm
kontinuierlich weiterentwickelt worden. Zunächst ging es nur darum, Punktwolkendaten im VRML-
Format einlesen, zuschneiden und schließlich diese kleineren Ausschnitte wieder abspeichern zu
können. Dieses Programm war ursprünglich nur ein kommandozeilen-basiertes Linux-Programm.
Es stellte sich heraus, dass es sehr schwierig war, die entsprechenden Koordinaten zum
Zuschneiden herauszufinden, ohne zugleich ein Bild vor Augen zu haben. Es musste also um eine
grafische Darstellung und Steuerung erweitert werden, die in den darauf folgenden Monaten
entwickelt wurde. Als Basis wurde die OpenGL-Programmierschnittstelle und die FreeGLUT-
Bibliothek gewählt, damit sich das Programm möglichst einfach auf andere Systeme portieren lässt.
Der Code für die grafische Darstellung wurde entsprechend in separate Dateien gldisplay.cc /
gldisplay.h ausgelagert. Alle Steuerungsfunktionen über Tastatur und Maus wurden in die Dateien
ui.cc / ui.h integriert.
Über eine bounding box - Auswahl und Point-Picking-Funktionen konnten die Punktwolken sehr
viel intuitiver zugeschnitten und abgespeichert werden. Da aber die FreeGLUT-Bibliothek nur ein
begrenztes Maß an GUI-Steuerelementen anbietet, wurde Ende 2006 eine eigene GUI mit
texturierten Schnellstartknöpfen entworfen, die in die Codedateien ui.cc, textures.cc und buttons.cc
integriert wurde.
Durch die gestiegene Komplexität und Funktionalität wurde im Laufe dieses Projekts für das User-
Interface die GUI-Library GLUI in das Programm eingebettet. GLUI bietet den Vorteil sehr
kompakt zu sein und trotzdem viele der aus MS Windows bekannten Steuerelemente und
Funktionen für OpenGL und GLUT zu integrieren. Ein weiterer Vorteil ist, dass das Programm
dabei trotzdem plattformunabhängig bleibt, weil hier nur auf standardmäßige OpenGL und GLUT-
Funktionen zurückgegriffen wird. Aus diesem Grund konnte das Programm unter wenig Aufwand
erfolgreich für Macintosh auf MacOS X portiert werden.
8
Abbildung 8: Die Benutzeroberfläche des Programms PointMesh.
links: Punktwolkenausschnitt in Kompassfarben; rechts: Punktwolkenausschnitt in RGB-
Echtfarben