Praxisprojekt: parametrische Box mit Deckel

LektionOpenSCAD: Praxisca. 3 Min. Lesezeit

Begriffe vorab

  • Wandstärke: Dicke der Außenwände.
  • Toleranz: Spiel zwischen Teilen, damit sie passen.
  • Parametrisch: Alle Maße hängen von wenigen Variablen ab.
  • Modul: Wiederverwendbarer Baustein.
  • Aufmaß: Zugabe, damit Passungen nach dem Druck funktionieren.

Ziel

Dieses Projekt führt die bisherigen Lektionen zusammen: Variablen, Module, boolesche Operationen, hull für Rundungen, for für Muster und Customizer-Kommentare. Es entsteht eine rechteckige Box mit Deckel, deren Maße sich über wenige Variablen ändern lassen. Der Entwurf ist ein eigenes Beispiel, keine Vorlage aus der Doku.

Vorgehen in Schritten

  1. Parameter festlegen: Innenmaße, Wandstärke, Eckenradius, Toleranz.
  2. Grundform bauen: ein Modul für einen abgerundeten Quader (hull über vier Zylinder).
  3. Box = Außen minus Innen: difference() mit einem Innenkörper, der oben herausragt.
  4. Deckel: eine Platte mit einer umlaufenden Lippe, die mit Toleranz in die Box passt.
  5. Anordnen: beide Teile nebeneinander legen, damit sie sich drucken lassen.
/* [Maße] */
innen_b = 60;      // Innenbreite (mm)
innen_t = 40;      // Innentiefe (mm)
innen_h = 25;      // Innenhöhe (mm)
wand    = 2;       // [1:0.5:4]
radius  = 4;       // [0:1:10]
spiel   = 0.3;     // Toleranz zwischen Deckel und Box

/* [Hidden] */
$fn = 48;
eps = 0.01;

// Abgerundeter Quader (Ecken in der xy-Ebene)
module rundquader(b, t, h, r) {
    hull()
        for (x = [r, b - r], y = [r, t - r])
            translate([x, y, 0]) cylinder(h = h, r = r);
}

module box() {
    ab = innen_b + 2 * wand;
    at = innen_t + 2 * wand;
    difference() {
        rundquader(ab, at, innen_h + wand, radius + wand);
        translate([wand, wand, wand])
            rundquader(innen_b, innen_t, innen_h + 1, max(radius, 0.1));
    }
}

module deckel() {
    ab = innen_b + 2 * wand;
    at = innen_t + 2 * wand;
    // Platte
    rundquader(ab, at, wand, radius + wand);
    // Lippe, die mit Spiel in die Box passt
    translate([wand + spiel, wand + spiel, wand - eps])
        difference() {
            rundquader(innen_b - 2 * spiel, innen_t - 2 * spiel, 4, max(radius - spiel, 0.1));
            translate([wand, wand, -1])
                rundquader(innen_b - 2 * spiel - 2 * wand, innen_t - 2 * spiel - 2 * wand, 6, 0.1);
        }
}

box();
translate([0, innen_t + 2 * wand + 10, 0]) deckel();

Was du daraus lernst

  • Ableitungen statt Zahlen: Außenmaße ergeben sich aus Innenmaßen plus Wandstärke. Ändert sich ein Parameter, folgt der Rest.
  • Epsilon: Der Innenraum ragt über die Oberkante hinaus (innen_h + 1), die Lippe überlappt die Platte um eps.
  • Toleranz: Das Spiel von 0,3 mm ist ein Beispielwert; er hängt vom Drucker ab und muss ausprobiert werden.
  • Module: rundquader wird dreimal wiederverwendet.

Beginne jedes Projekt mit den Parametern: Wer erst baut und später parametrisiert, schreibt vieles doppelt.

Zum Selbermachen

  1. Füge dem Deckel eine Griffmulde (abgezogene Kugel) hinzu.
  2. Ergänze vier Schraubenlöcher in den Ecken per for-Schleife.

Verwandte Themen

OpenSCAD → Die übrigen Lektionen dieser Themenwelt; Informatik: Grundlagen → „Algorithmen und Berechenbarkeit“ für das Denken in Schritten.

Prüfstatus: Belegt (Stand 1. Oktober 2026): Die verwendeten Konstrukte (hull, difference, for, Module, Customizer-Syntax, Epsilon-Prinzip) stützen sich auf die in den vorherigen Lektionen belegten Seiten des User Manuals. Alle Codebeispiele dieser Lektion wurden mit OpenSCAD 2026.09.18 (lokale Installation) ausgeführt und liefen ohne Fehler und Warnungen. Nicht einzeln belegt: das gesamte Projekt (eigener Entwurf, keine Vorlage aus der Doku) und der Toleranzwert 0,3 mm (Beispielwert, druckerabhängig). Außerdem nicht einzeln belegt: die Erklärungen in eigenen Worten, die Beispiele als solche (konstruiert) und die Wertungen.

Quellen

  • OpenSCAD User Manual – Primitive Solids (en.wikibooks.org/wiki/OpenSCAD_User_Manual/Primitive_Solids)
  • OpenSCAD User Manual – CSG Modelling (en.wikibooks.org/wiki/OpenSCAD_User_Manual/CSG_Modelling)
  • OpenSCAD User Manual – Customizer (en.wikibooks.org/wiki/OpenSCAD_User_Manual/Customizer)
  • OpenSCAD User Manual – Tips and Tricks (en.wikibooks.org/wiki/OpenSCAD_User_Manual/Tips_and_Tricks)
  • OpenSCAD Cheat Sheet (openscad.org/cheatsheet, bezieht sich auf Version 2021.01)

Alles zu „OpenSCAD: Praxis“