OpenScad

OpenScad Toturial



Einleitung:

OpenSCAD ist eine freie CAD-Software auf einer textbasierten Programmiersprache mit der 3D-Modelle erzeugt werden. Die Objekte bestehen aus einfachen geometrischen Grundkörpern und werden mit Transformationen und Modifikationen zu einem komplexen 3D-Modell vereinigt. Die Modellierung basiert auf der CSG-Technik (Constructive Solid Geometry). OpenSCAD ist verfügbar für Windows, Linux, OS X, FreeBSD und OpenBSD. Als Dateiformat wird eine einfache Textdatei mit der Endung *.scad genutzt. Im Gegensatz zu den meisten anderen CAD-Programmen steht hier also ein komplett freies Dateiformat zur Verfügung.

Installation
Der Download von OpenSCAD steht auf der Webseite http://www.openscad.org/downloads.html zur Verfügung.

OpenScad starten
Nach dem Start von OpenSCAD wird typischerweise ein dreigeteiltes Fenster angezeigt:
1. Ein einfacher Texteditor für die Bearbeitung des Programms (Eingabe),
2. Ein Bereich für die graphische Ausgabe zum Betrachten des Ergebnisses,
3. Ein Bereich, in dem Fehler- und Statusmeldungen angezeigt werden (Verarbeitung).
4. Ein Bereich für die Konfiguration und Anpassung des Models (Voreingestellt ist der Customizer ausgeblendet).






Neben der Texteingabe im Editor stehen folgende Programm-Funktionen zur Verfügung:

Im Editor-Bereich (1)

Interaktion Wirkung
F4 Neu laden und Vorschau
F5 Vorschau, Übersetzung (Kompilieren)
F6 Rendern, für STL-Export notwendig

Im Grafik-Bereich (2)

Interaktion Wirkung
Linke Maustaste Modell drehen
Rechte Maustaste Modell verschieben
Mausrad Zoomen


OpenScad Befehle:

Eine Kugel zeichnen

sphere(10);

Kugel mit 60 Fragmente

$fn=60;
sphere(10);


Kugel mit 3 Fragmente

$fn=3;
sphere(10);


Einen Zylinder zeichnen

$fn=60;
cylinder (20,10);

Einen Zylinder zeichnen

$fn=60;
cylinder (20,10,10);

Einen Würfel zeichnen

$fn=60;
cube (15);

Einen Würfel zeichnen

$fn=60;
cube (15,center=true);

Würfel und Kugel addieren

$fn=60;
cube (15, center=true);
sphere(10);

Würfel und Kugel subtrahieren

$fn=60;
difference(){
cube (15, center=true);
sphere(10);
}

Kugel, Würfel und Zylinder

$fn=60;
cube (15, center=true);
sphere(10);
cylinder (20,5,5,center=true);



Kugel und Würfel addiert, der ist Zylinder subtrahiert

$fn=60;
difference(){
union(){
cube (15, center=true);
sphere(10);
}
cylinder (20,5,5,center=true);
}

Dm als Durchmesser-Variable

$fn=60;
Dm =3;
difference(){
union(){
cube (15, center=true);
sphere(10);
}
cylinder (20,Dm,Dm,center=true);
}


Eine zweite Kugel hinzugügen

$fn=60;
Dm =3;
difference(){
union(){
cube (15, center=true);
sphere(10);
}
cylinder (20,Dm,Dm,center=true);
}
translate ([0,0,17])
sphere(10);



Die zweite Kugel subtrahieren

$fn=60;
Dm =3;
difference(){
union(){
cube (15, center=true);
sphere(10);
}
cylinder (20,Dm,Dm,center=true);
translate ([0,0,17])
sphere(10);
}



Mit rotate einen zweiten Durchbruch erzeugen

$fn=60;
Dm =3;
difference(){
union(){
cube (15, center=true);
sphere(10);
}
cylinder (20,Dm,Dm,center=true);
translate ([0,0,17])
sphere(10);
rotate([90, 0, 0])
cylinder (20,Dm,Dm,center=true);

}