format&heroes

cleanup the formaat and make heroes box
This commit is contained in:
2026-04-29 15:45:31 +02:00
parent 6c4deab335
commit bd6ea68d9a
9 changed files with 263 additions and 348 deletions

View File

@@ -1,68 +1,40 @@
include <BOSL2/std.scad>
use <../Box.scad>
// Parameter for console overwrite
b = 178;
t = 38;
h = 20;
module box(b, t, h) {
difference() {
difference() {
difference() {
// base
cuboid([ b, t, h], anchor = [ -1, -1, -1 ],rounding = 1,edges = [ TOP, FRONT + LEFT, FRONT + RIGHT, BACK + LEFT, BACK + RIGHT ]);
}
// left lower
sideCut(b,t);
// left upper
translate([0, 0, h]) mirror([0, 0, 1]) sideCut(b, t);
// right lower
translate([b, 0, 0]) mirror([1, 0, 0]) sideCut(b,t);
// right upper
translate([b, 0, h]) mirror([1, 0, 0]) mirror([0, 0, 1]) sideCut(b, t);
// inner
translate([ 21, 19, h-11 ]) cylinder(h = 12, r = 13, center = false);
translate([14, -1, h-11]) cube([14, t + 2, 18.5], false);
translate([ 55, 19, h-11 ]) cylinder(h = 12, r = 13, center = false);
translate([49, -1, h-11]) cube([14, t + 2, 18.5], false);
translate([ 89, 23, h-11 ]) cylinder(h = 12, r = 13, center = false);
translate([83, -1, h-11]) cube([14, t + 2, 18.5], false);
translate([ 123, 25, h-11 ]) cylinder(h = 12, r = 13, center = false);
translate([117, -1, h-11]) cube([14, t + 2, 18.5], false);
translate([ 157, 25, h-11 ]) cylinder(h = 12, r = 13, center = false);
translate([151, -1, h-11]) cube([14, t + 2, 18.5], false);
// clean area for card pocket
translate([b- 79, -1, -1]) cube([80, 13, 41], false);
// base
cuboid(
[ 140, 38, 18],
anchor = [ -1, -1, -1 ],
rounding = 1,
edges = [
TOP,
FRONT + LEFT,
FRONT + RIGHT,
BACK + LEFT,
BACK + RIGHT
]
);
}
sideCut(43); // left lower
translate([0, 0, 18]) mirror([0, 0, 1]) sideCut(43); // left upper
translate([140, 0, 0]) mirror([1, 0, 0]) sideCut(43); // right lower
translate([140, 0, 18]) mirror([1, 0, 0]) mirror([0, 0, 1]) sideCut(43); // right upper
// inner
translate([16.5, 18.5, 7]) cylinder(h = 12, r = 13, center = false);
translate([9.5, -1, 7]) cube([14, 46, 18.5], false);
translate([43, 18.5, 7]) cylinder(h = 12, r = 13, center = false);
translate([36, -1, 7]) cube([14, 46, 18.5], false);
translate([70, 24.5, 7]) cylinder(h = 12, r = 13, center = false);
translate([63, -1, 7]) cube([14, 46, 18.5], false);
translate([97, 24.5, 7]) cylinder(h = 12, r = 13, center = false);
translate([90, -1, 7]) cube([14, 46, 18.5], false);
translate([123.5, 24.5, 7]) cylinder(h = 12, r = 13, center = false);
translate([116.5, -1, 7]) cube([14, 46, 18.5], false);
// clean area for card pocket
translate([58.75, -1, -1]) cube([81.4, 13, 41], false);
}
module sideCut(b,t) {
translate([0,-1,0]) {
rotate([-90,-90,0]) {
linear_extrude(t/4+4) {
polygon(points=[[-1,-1], [-1,1.6], [3.1, 1.6], [6.1,-1]]);
}
}
}
difference() {
translate([0,t/4+2,0]) {
rotate([-90,-90,0]) {
linear_extrude(0.75 * t) {
polygon(points=[[-1,-1], [-1,3.2], [6.9, 3.2], [11.2,-1]]);
}
}
}
translate([2.2,0.75 * t - 2.4, 0]) {
rotate([90,-90,0]) {
linear_extrude(0.4 * t + 5) {
polygon(points=[[-1,-1], [-1,0.6], [3.3, 0.6], [4.9,-1]]);
}
}
}
}
}
box(b, t, h);