Um die Objekte beliebig im Raum zu verschieben, bedienen wir uns der Funktion translate([x,y,z]). In Listing 2 verschiebt sie den Zylinder so, dass er im Zentrum des Kubus liegt. Dabei verlagert sie den Zylinder auch ein wenig an der Z-Achse nach unten. Das bewirkt, dass die Darstellung bereits im Vorschaumodus keine Artefakte mehr auf den Bildschirm bringt (Abbildung 5).
Listing 2
difference(){
cube (30);
translate([15,15,-5]) cylinder(40,10,10);
}
Die nächste wichtige Funktion, rotate([x,y,z]), dreht Objekte im Raum um alle drei Achsen. Beachten Sie beim Einsatz, dass die Funktion die Objekte um den Nullpunkt des Koordinatensystems dreht, nicht um deren eigene Mittelachse (Listing 3). Es kommt daher vor, dass sich Objekte nach dem Rotieren nicht an den Positionen befinden, an denen Sie sie benötigen (Abbildung 6). Eine extrem hilfreiche Funktion von OpenSCAD erreichen Sie hier über das Raute-Zeichen (#). Setzen Sie es vor ein Objektkommando, bekommt das Objekt eine semitransparente rote Einfärbung.
Listing 3
difference(){
cube (30);
translate([15,15,-5]) cylinder(40,10,10);
rotate([90,0,0]) translate([15,15,-5]) #cylinder(40,10,10);
rotate([0,90,0]) translate([15,15,-5]) #cylinder(40,10,10);
}
Nachdem wir nun sehen, wohin es unsere Objekte verschlagen hat, können wir in Listing 4 die Transform-Parameter so anpassen, dass die Objekte an den gewünschten Positionen landen (Abbildung 7). Der ausgehöhlte Würfel ist damit fertig. Mit [F6]+ lässt sich das Ergebnis final berechnen. Mit [F7] exportieren Sie das Objekt in eine STL-Datei, die Sie in gängige 3D-Drucker importieren können.
Listing 4
difference(){
cube (30);
translate([15,15,-5]) cylinder(40,10,10);
rotate([90,0,0]) translate([15,15,-35]) cylinder(40,10,10);
rotate([0,90,0]) translate([-15,15,-5]) cylinder(40,10,10);
}

Abbildung 7: Alle Objekte befinden sich nun am richtigen Platz, der ausgehöhlte Würfel ist bereit für den 3D-Druck.
Viele Hilfen im Netz
Das hier erstellte Objekt vermittelt einen ersten Eindruck, wie OpenSCAD arbeitet. Möchten Sie sich etwas intensiver in das Programm einarbeiten, liefert das deutschsprachige OpenSCAD-Tutorial anschauliche Hilfe [2]. Eine Reihe kurzer Youtube-Videos führt durch die wichtigsten Funktionen. Wer es taktiler mag, greift zum Buch “OpenSCAD verstehen und richtig anwenden” von Alicia Noors [3].
Wie eingangs schon erwähnt, bietet OpenSCAD eine vollwertige Programmiersprache. Sie beinhaltet Schleifen, Kontrollstrukturen und arithmetische Funktionen. Sie unterstützt auch das Schreiben von Modulen, um Programmteile mehrfach zu verwenden. Für eine Übersicht aller Kommandos pflegt das OpenSCAD-Projekt ein Cheatsheet [4]. Die Links darin führen jeweils zu detaillierten Erklärungen.
Fazit
OpenSCAD empfiehlt sich als leistungsfähige Alternative zu den üblichen CAD-Programmen. Wenn sich ein Problem mithilfe einer einfachen Berechnung lösen lässt, ist OpenSCAD sowohl im Tempo wie auch in Sachen Einfachheit kaum zu schlagen. Die Anwendung eignet sich auch dazu, das Programmieren zu erlernen, da es eine einfache Syntax nutzt und das Ergebnis der Ausführung sofort auf dem Bildschirm erscheint.
Des Weiteren lassen sich 3D-Modelle aus anderen Programmen importieren, bearbeiten und wieder exportieren. Wenn Sie hin und wieder 3D-Modelle für Ihren Drucker selbst erstellen, sollten Sie ein paar Stunden investieren, um sich in OpenSCAD einzuarbeiten. Die Lernkurve ist zwar steil, doch es macht riesigen Spaß, eigene Konstruktionen zu erstellen. (cla)
Der Autor
Martin Mohr hegt seit früher Jugend eine Vorliebe für alles, was blinkt. Eine Ausbildung zum Elektroniker verstärkte das noch. Nach einem Informatikstudium entwickelte er überwiegend Java-Applikationen. Mit dem Raspberry Pi erwachte die alte Liebe zur Elektronik wieder.
Glossar
- STL
-
Das STL-Format (die Abkürzung steht für Stereolithografie) erlaubt den Austausch dreidimensionaler Datenmodelle zwischen CAD-Programmen und Geräten für additive Fertigung wie etwa 3D-Drucker.
Infos
- OpenSCAD herunterladen: https://www.openscad.org/downloads.html
- Deutsches OpenSCAD-Tutorial: https://www.youtube.com/playlist?list=PLZ89Fw0KZGPzrNtcVRDutvuOsVAHZNa20
- “OpenSCAD verstehen und richtig anwenden”: https://books.google.de/books/about/OpenSCAD_verstehen_und_richtig_anwenden.html?id=4xKIDwAAQBAJ
- Kommandoübersicht: https://www.openscad.org/cheatsheet/index.html







