OpenScad ist ein kostenloses 3D CAD Programm für alle Betriebssysteme von Windows über Apple bishin zu Linux.
Das Programm kann hier heruntergeladen werden.
Mit openSCAD lassen sich schnell und einfach 2D und 3D Modelle erstellen, die als .stl, .dxf und einigen anderen Formaten exportiert werden können. Diese Formate können an den UNIKAT 3DDruckern und CNC-Fräsen eingesetzt werden.
Die große Besonderheit bei diesem Programm liegt darin, dass die Objekte im Gegensatz zu den bekannten Programmen Autodesk Inventor oder Blender nicht in einem Raum erstellt, gezogen und fixiert werden müssen. Abhängigkeiten gibt es auch keine. Stattdessen wird das Objekt mit einem Editor programmiert. Dies bietet große Vorteile, nicht nur der Übersicht wegen, sondern vereinfacht auch viele komplexe Modellierungen und Veränderungen an Objekten. Desweiteren können viele zusätzliche Programme eingebunden werden (z.B. trace2scad oder QR Code Generator für OpenSCAD) die es ermöglichen sogar Bilder Druckbar zu machen.
Desweiteren ist openSCAD einheitenlos, d.h. man programmiert nur mit Zahlenwerten, nicht mit festgelegten Einheiten. Dadurch kann man sein Objekt problemlos in verschiedene Programme einspeißen oder die Größe verändern.
Zum Erstellen eines Objekts benötigt man nicht mehr als ein paar Grundbefehle. Alle Objekte werden aus den Grundformen Kreis und Rechteck (in 3D Kugel und Kubus) gebildet. Diese Grundobjekte werden verschoben, verformt und verbunden um jedes erdenkliche Modell erstellen zu können.
Da openSCAD mit einer „programmierung“ seiner Objekte arbeitet, muss eine bestimme, C ähnliche Syntax beachtet werden:
circle(radius);
translate([x,y,z]) cube([laenge,breite,hoehe]);
circle(radius=5);
cube([15,20,30]);
{ cube([10,20,30]); translate([10,5,0]) sphere(5); }
Die gesamte Übersicht über die Befehle und Strukturen erhält man hier .
Wichtig beim Export der Modelle ist für welche Anwendungsgebiete die Dateien lesbar sein müssen. Will man fräsen exportiert man die Dateien als .dxf-Dateien. Diese .dxf-Dateien können nur aus zweidimensionalen Objekten gebildet werden. Zum 3DDrucken braucht man dagegen .stl-Dateien; diese werden aus dreidimensionalen Objekten exportiert. Für Anfänger empfiehlt es sich alle Objekte erst in zweidimensionaler Form zu erstellen und diese dann zu extruieren, so können beide Formate ohne Umstände gewählt werden.
In diesem kleinen Tutorial werden wir ein kleines Objekt in 2D erstellen:
circle(r=5);
translate([5,10]) circle(r=5);
square([5,10]);
difference() { //objekte voneinander differenzieren translate([5,10]) circle(r=5); //erstellen und verschieben eines kreises square([5,10]); //erstellen eines rechtecks } \\
Ein zweiter Sketch zeigt die Anwendung im 3Dimensionalen Raum:
rotate_extrude(angle=360, convexity=30){ translate([90,0,-10]) union(){ translate([20,10.5,0]) scale(0.7) union(){ difference(){ union(){ circle(10); translate([-20,-15])square([30,15]); } translate([-3,0]) square([6,15]); translate([-10,8]) square([20,10]); translate([-20,0]) circle(10); } } } }
In einem letzten Beispiel wird eine einfache Befehlsstruktur realisiert:
for (a= [0 : 7]){ b=45; c=0; d=40; rotate(a*b+c)translate([-90,0,0]) linear_extrude(4) circle(d, $fn=3); }