3D-Design mit diversen Programmen

Ziel:

Eine Übersicht der 3D-Design-Programme mit ihren Stärken und Schwächen, sowie den Einsatzbedingungen erstellen.

Link zum BBB

Wer hat interesse?

  • Ich
0 Teilnehmer

Session bei den Campdays

Bei den Herbst-Campdays hat eine Session zum Thema stattgefunden.

Teilnehmende:

@drdonut
@klecmatt

Ablauf:

Zuerst haben wir uns die grundlegende Bedienung von Blender angeschaut (g (wie grab) für bewegen, s (wie size) um die Größe zu verändern, r (wie rotate) um Objekte zu drehen).
Danach habe wir uns angeschaut, wie man Texturen mithilfe des UV editors hinzufügt.

Hier hat ja @klecmatt vorgeschlagen sich mal mit OpenSCAD zu beschäftigen.

Des Weiteren gibt es zu FreeCAD auch schon ein Thema: Zusammen FreeCAD lernen. In diesem hat @pinguin noch auf das Programm chili3d hingewiesen.

Was haltet ihr davon sich in einem ersten Schritt mal übergreifend mit 3D-Design zu beschäftigen. Man könnte sich dafür zunächst die verschiedenen Konzepte von 3-D-Design-Tools ansehen, welches Bedienkonzept dahinter steckt und für welchen Anwendungsfall sie geeignet sind.

Ich kenne mich mit FreeCAD und OpenSCAD aus. Mit Blender habe vor etlichen Jahren mal in einem Workshop gearbeitet. Soweit ich mich an Blender noch erinnern kann, würde ich das eben für ganz andere Dinge verwenden, wie z.B. OpenSCAD. FreeCAD ist dabei aber eh nochmal eine Sache für sich, weil die Software selbst schon einige unterschiedliche Tools bereitstellt.

Welche wir dann mit in die Betrachtung nehmen können wir dann ja schauen.

Was haltet ihr von dem Vorschlag? Oder glaubt ihr schon einen guten Überblick zu haben?

Ich war zwar nicht bei diesem Thema dabei, aber ich finde es wirklich hilfreich mal ein für alle mal eine Übersicht zu machen. Für mich würde das vorallem deswegen helfen, weil man dann hoffentlich eine beste Software rausfindet und die dann bei Teckids verwendet, weil ich es bei verschiedenen Sessions ziemlich nervig fand immer eine neue Software bedienen lernen zu müssen.

Ich stimme euch da zu. (Das war auch mehrr oder weniger meine Idee). Wir könnten (wie von @lumi vorgeschlagen), so eine Liste/Übericht machen, wo die 3D-Design-Programme aufgeführt werden, sowie ihre Einsatzzwecke. Ich würde das wie von @mwinter beschrieben machen.
Was haltet ihr davon?

Ich würde vorschlagen, wir treffen uns per BBB. Ich plane dafür etwa 1,5-2h ein.

  • 3.11. 15:00
  • 3.11. 17:30
  • 7.11. 15:00
  • 7.11. 17:30
  • 8.11. 17:30
  • 9.11. 11:00
  • 9.11. 15:00
  • 9.11. 17:30
  • 13.11. 17:30
  • 14.11. 15:00
  • 17.11. 15:00
  • 17.11. 17:30
  • 20.11. 17:30
  • 21.11. 15:00
  • 21.11. 17:30
  • 22.11. 11:00
  • 22.11. 15:00
  • 22.11. 17:30
  • 23.11. 11:00
  • 23.11. 15:00
0 Teilnehmer

Außerdem passt am 23. auch 17:30.

Themenpate

Der Termin ist dann der 13.11. um 17:30Uhr

Sessenbericht vom 13.11. 2025

Teilnehmende

Besprechung Vorgehen

Im ersten Schritt haben wir besprochen, wie das ganze Vorgehen ablaufen soll. Wir wollen uns nun in mehreren Sessions verschieden Programme zum 3D-Modelling ansehen. Dabei wollen wir uns auf das Erstellen von Modellen zum 3D-Drucken und dem Erstellen von 3D-Modellen für Spiele (z.B. Luanti) beschränken. Andere Aspekte von 3D-Design (z.B. Technische Zeichnungen, Architecture) soll nicht berücksichtigt werden.

Wir haben uns auf die folgenden Programme festgelegt:

  • ​OpenSCAD
  • FreeCAD
  • chili3D
  • Dune3D
  • Blender

Im ersten Schritt wollen wir uns OpenSCAD und FreeCAD ansehen. Danach die Programme chili3D und Dune 3D ansehen und als letztes uns mit Blender beschäftigen.

OpenSCAD

In der heutigen Session haben wir uns OpenSCAD angesehen. Das Besondere von OpenSCAD ist, dass mit Text beschrieben wird, wie das Objekt aussehen soll. Dabei weißt der Code von OpenSCAD Merkmale einer Programmiersprache auf wie Variablen und Schleifen.

Erstellen von 3D-Objekten

Alle Objekte werden in einem Koordinatensystem mit x-,y- und z-Achse definiert.

Wir haben die folgenden beiden Befehle kennen gelernt:
cube([x,y,z]); - Würfel erstellen
cylinder([h,r1,r2]); - Zylinder erstellen

Auflösung von Kreis-Objekten

Mit dem Parameter $fn kann man bei Kreis-Objekten festlegen, aus wie vielen Teilsegmenten der Kreisbogen gebildet werden soll.

Fixpunkt des Objekts in die Mitte setzen

cube([x,y,z], center = true) - Schalter center

Objekte im Raum verschieben und Drehen

Um Objekte verschieben und drehen zu können werden die folgenden Funktionen verwendet.
translate([x,y,z]) - Objekt im Raum verschieben
rotate([x,y,z]) - Objekt um den Koordinaten-Ursprung drehen

Der folgende Befehl erzeugt beispielsweise einen Zylinder mit der Höhe 15mm und einem Radius von 5mm, der um 90° um die y-Achse gedreht und 50mm in Richtung der x-Achse verschoben ist.
translate([50,0,0]) rotate([0,90,0]) cylinder(15, 5 , 5, center=true)

Die for-Schleife

Das schöne an OpenSCAD sind die for-Schleifen, mit denen man direkt mehrere Objekte erzeugen kann, die sich z.B. symmetrisch um einen Punkt drehen. Dabei können auch Variablen werwendet werden.

for (a=[0:22.5:360]) {
        rotate([0,0,a]) translate([10,0,0]) rotate([0,90,0]) cylinder(15, 5 , 5, center=true, $fn = 360);
    }

Module

Als nächstes haben wir noch Module kennen gelernt. Module können benutzt werden um neben den Standard-3D-Objekten weitere Objekte zu erstellen, die wieder verwendet werden können. Hier können dabei für die Module ebenso Parameter festgelegt werden.

module pipering(r=5) {
    for (a=[0:22.5:360]) {
        rotate([0,0,a]) translate([r,0,0]) rotate([0,90,0]) cylinder(15, 5 , 5, center=true, $fn = 360);
    }
}

Das kann z.B. dazu verwendet werden. Um das gesamte Modul im Raum zu verschieben.
translate([0,0,10]) pipe(70);

Boolsche Operationen

Als letztes haben wir uns noch die boolschen Operationen angesehen.

Damit können zwei Objekte auf eine ganz bestimmte Art mit einander verwoben werden.
union() - Mit union werden die zwei Objekte miteinander verschmolzen und das Ergebnis zeigt eine Kombination aus den beiden Objekten
interesect() - Bei intersect bleibt die Überschneidung der beiden Objekten übrig
difference() - Bei difference wird der Bereich, der sich Überschneidet aus dem ersten Objekt herausgeschnitten.

Ein Beispielhafter code könnte z.B. so aussehen.

difference() {
 	cylinder (h = 4, r=1, center = true, $fn=100);
 	rotate ([90,0,0]) cylinder (h = 4, r=0.9, center = true, $fn=100);
 }

Hilfreiche Links

Terminabstimmung:

  • 5.12. 15:00
  • 5.12. 16:00
  • 5.12 17:30
  • 6.12. 11:00
  • 7.12. 11:00
  • 7.12. 14:00
  • 7.12. 15:00
  • 7.12. 16:00
  • 7.12. 17:30
  • 8.12. 16:00
  • 8.12. 17:30
0 Teilnehmer

Soll das so, dass Termine während der Campdays sind?

Das war unabsichtlich. Ich habe die Umfrage korrigiert und werde sie noch um ein paar Tage ergänzen.

Ich kann leider an keinem der angegebenen Termine.