Mike Barkmin

Ceci-Merch

Schlüsselanhänger

Vorschau
Parameter
Binärdateien
include <BOSL2/std.scad> $fn = 120; contour_h = 0.4; h = 2.1 - contour_h; module einkaufschip() { color("white") cyl(d=23, h=h, anchor=BOTTOM); color("red") { translate([0, 0, h]) tube(od=23, id=21, h=contour_h, anchor=BOTTOM); translate([-9.3, -9.5, h]) linear_extrude(height=contour_h) scale([0.5, 0.5, 1]) import("./logo_fill.svg"); translate([0, 2, 0]) { translate([0, -5, h]) linear_extrude(h=contour_h) text("CECI", font="Roboto Condensed", size=3); translate([0, -8.2, h]) linear_extrude(h=contour_h) text("DUS", font="Roboto Condensed", size=3); translate([8, -8.1, h]) rotate([0, 0, 90]) linear_extrude(h=contour_h) text("1907", font="Roboto Condensed", size=1); } } } module anhaenger() { diff() { cuboid([14, 30, h], anchor=BOTTOM + BACK, rounding=7, edges=[FRONT + LEFT, FRONT + RIGHT]) { position(FRONT + CENTER) translate([0, 2, 0]) tag("remove") cyl(d=6, h=h + 1, anchor=FRONT); } tag("remove") #cyl(d=23, h=h + 1, anchor=BOTTOM); } } module anhaenger_2() { color("white") diff() { hull() { cyl(d=23, h=h, anchor=BOTTOM); translate([0, -30, 0]) cyl(d=12, h=h, anchor=BOTTOM); } tag("remove") cyl(d=23, h=h, anchor=BOTTOM); translate([0, -30, 0]) tag("remove") cyl(d=6, h=h + 1, anchor=BOTTOM); } } union() { einkaufschip(); anhaenger_2(); }
Vorschau
Parameter
Binärdateien
include <BOSL2/std.scad> $fn = 120; // Set this to render only what you need: // "both" -> full assembled model (red on top of white, as before) // "red" -> red parts only, flattened to z=0 so it prints flat // "white" -> white base only part = "red"; // ["both", "red", "white"] contour_h = 0.4; h = 2.1 - contour_h; // z offset for red geometry: 0 when printing red on its own, h when combined red_z = (part == "red") ? 0 : h; module label(t = "CECI", size = 10) { if (part == "both" || part == "red") color("red") translate([0, 0, red_z]) linear_extrude(height=contour_h) text(t, font="Storytime", size=size); if (part == "both" || part == "white") color("white") linear_extrude(height=h) offset(3) text(t, font="Storytime", size=size); } if (part == "both" || part == "red") translate([0, 0, red_z]) color("red") linear_extrude(height=contour_h) import("./logo_fill.svg"); if (part == "both" || part == "white") { color("white") linear_extrude(height=h) offset(3) import("./logo_fill.svg"); diff() { translate([10, -6, 0]) color("white") cuboid([10, 42, h], anchor=BOTTOM, rounding=5, edges=[FRONT + LEFT, FRONT + RIGHT]) { translate([0, 2, 0]) position(FRONT + CENTER) tag("remove") cyl(r=3, h=h + 1, anchor=FRONT); } } } translate([-5, 0.5, 0]) { translate([15, -20, 0]) rotate([0, 0, 90]) { label("CECI"); } translate([5, -0.5, 0]) label("1907", size=5); rotate([0, 0, 90]) translate([-20, -22, 0]) label("Düsseldorf", size=5); if (part == "both" || part == "red") { color("red") translate([18.2, -16.5, red_z]) cyl(r=0.4, h=contour_h, anchor=BOTTOM); color("red") translate([18.2, -15.2, red_z]) cyl(r=0.4, h=contour_h, anchor=BOTTOM); } }

Münze

::openscad{src="./muenze.scad" library="BOSL2" /}

Ceci-Merch

Teilbare URL erstellen

Abschnitte auswählen