Implementierung
Für das Software-Praktikum wurde der Algorithmus in C++ implementiert unter Verwendung der OpenGL-Api.
Das Programm liesst die Werte des Skalar-Felds aus einer Text-Datei ein die mit dem Magiccode "MCSW1" beginnt und nachfolgend in je einem Byte die skalaren Werte der Rasterpunkte enthält. Das Programm wird mit folgenden Parametern aufgerufen:
$ ./mcubes <infile> <outfile> <x> <y> <z> <cut_off>
Outfile ist dabei der Name unter dem die berechnete Einhüllende als Wavefront OBJ-Datei gespeichert werden soll. Um diese Funktion zu aktivieren muss im Quellcode in der vorletzte Zeile das Kommentar-Zeichen entfernt werden.
Mit dem Tool gendata können einfache Beispieldateien erzeugt werden:
$ ./gendata <x> <y> <z> <outfile>
Download
mcubes.zip