Benutzer-Werkzeuge

Webseiten-Werkzeuge


knowledgebase:openscad

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
knowledgebase:openscad [2017/11/20 14:27]
rolex
knowledgebase:openscad [2017/12/20 11:49] (aktuell)
rolex
Zeile 3: Zeile 3:
 OpenScad ist ein kostenloses 3D CAD Programm für alle Betriebssysteme von Windows über Apple bishin zu Linux.\\ Das Programm kann [[http://www.openscad.org/downloads.html |  hier ]] heruntergeladen werden.  OpenScad ist ein kostenloses 3D CAD Programm für alle Betriebssysteme von Windows über Apple bishin zu Linux.\\ Das Programm kann [[http://www.openscad.org/downloads.html |  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.  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. 
- 
-\\ ''**Diese Seite ist noch in Bearbeitung**'' \\ 
  
 === Besonderheiten von openSCAD === === Besonderheiten von openSCAD ===
-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.\\+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. [[knowledgebase:trace2scad|trace2scad]] oder [[knowledgebase:qrcodegenerator|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. 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.
  
Zeile 13: Zeile 11:
 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.\\ 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: Da openSCAD mit einer "programmierung" seiner Objekte arbeitet, muss eine bestimme, C ähnliche Syntax beachtet werden:
-  * Jedes erstellte Objekt muss mit einer Klammer definiert und einem Semikolon abgeschlossen werden\\ +  * Jedes erstellte Objekt muss mit einer Klammer definiert und einem Semikolon abgeschlossen werden''circle(radius);''\\ 
-    ''circle(radius)'' +  * alles was mit einem erstellten Objekt passiert wird vor dem Objekt festgelegt ''translate([x,y,z]) cube([laenge,breite,hoehe]);'' 
-  * alles was mit einem erstellten Objekt passiert wird vor dem Objekt festgelegt +  * Grundobjekte werden entweder vereint oder geschnittenunion(), intersection() oder difference() 
-    ''translate([x,y,z]) cube([laenge,breite,hoehe]);'' +  * Runde Klammern definieren Eigenschaften''circle(radius=5);'' 
-  * Grundobjekte werden entweder vereint oder geschnitten +  * Eckige Klammern definieren X,Y und Z Achsenabschnitte/-längen''cube([15,20,30]);'' 
-''union(){ //alles in dieser Klammer wird zu einem Objekt }''\\  +  * Geschweifte Klammern fassen Objekte und Strukturen zusammen''{ cube([10,20,30]); translate([10,5,0]) sphere(5); }'' 
-''difference(){ //alles in dieser Klammer wird voneinander abgezogen }''\\  +  * auf C basierend können Konstanten und Variablen, sowie Loops auch programmiert werden
-''intersection(){ //alle Überschneidungen innerhalb der Klammer bleiben übrig }''\\  +
-  * Runde Klammern definieren Eigenschaften  +
-    ''circle(radius=5);'' +
-  * Eckige Klammern definieren X,Y und Z Achsenabschnitte/-längen +
-    ''cube([15,20,30]);'' +
-  * Geschweifte Klammern fassen Objekte und Strukturen zusammen +
-    ''{ cube([10,20,30]); translate([10,5,0]) sphere(5); }''+
      
 Die gesamte Übersicht über die Befehle und Strukturen erhält man [[http://www.openscad.org/cheatsheet/index.html | hier ]]. Die gesamte Übersicht über die Befehle und Strukturen erhält man [[http://www.openscad.org/cheatsheet/index.html | hier ]].
Zeile 43: Zeile 34:
     translate([5,10]) circle(r=5);  //erstellen und verschieben eines kreises     translate([5,10]) circle(r=5);  //erstellen und verschieben eines kreises
     square([5,10]);                 //erstellen eines rechtecks     square([5,10]);                 //erstellen eines rechtecks
-    }  +    } \\  
- +     
- +Ein zweiter Sketch zeigt die Anwendung im 3Dimensionalen Raum:\\  
- +  rotate_extrude(angle=360, convexity=30){ 
-==== Du hast Interesse an openSCAD oder willst einen Workshop bei UNIKAT dazu besuchen? Schreib uns einfach unter unikat ===+    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); 
 +  } 
 +\\ 
 +==== Du hast Interesse an openSCAD oder willst einen Workshop bei UNIKAT dazu besuchen? Schreib uns einfach unter unikat@tu-ilmenau.de ===
knowledgebase/openscad.1511184441.txt.gz · Zuletzt geändert: 2017/11/20 14:27 von rolex