Cardholder

fix errors in the cardholder, format and switch to 1.5mm walls
This commit is contained in:
2026-03-28 13:56:39 +01:00
parent 7432ce03d0
commit b41e43cf2c
5 changed files with 105 additions and 48 deletions

View File

@@ -2,57 +2,84 @@ include <BOSL2/std.scad>
// Parameter for console overwrite
b = 58;
t = 14;
t = 3;
h = 88;
name = "Cards";
module cardHolder(b,t,h,name){
module cardHolder(b, t, h, name) {
// floor
cube([b+4,t+4,1],false);
// left
translate([0,0,1]){
cuboid([1,t+4,h+3], anchor=[-1,-1,-1], rounding=min(10,t+4), edges=FRONT+TOP);
}
// right
translate([b+3,0,1]){
cuboid([1,t+4,h+3], anchor=[-1,-1,-1], rounding=min(10,t+4), edges=FRONT+TOP);
}
// back
translate([1,t+3,1]){
cuboid([10,1,h+3], anchor=[-1,-1,-1], rounding=5, edges=RIGHT+TOP);
translate([b-8,0,0]) {
cuboid([10,1,h+3], anchor=[-1,-1,-1], rounding=5, edges=LEFT+TOP);
}
translate([10,0,0]) {
difference(){
cube([b-18,1,h+3],false);
translate([0,-1,15]) {
cuboid([b-18,3,h-12], anchor=[-1,-1,-1], rounding=10, edges=[LEFT+BOTTOM,RIGHT+BOTTOM]);
}
}
// floor
bInner = b - 10;
tInner = t - 10;
if (bInner >= 6 && tInner >= 6) {
difference() {
cube([ b, t, 1.5 ], false);
bSpace = 5 + (((bInner + 2) % 8) / 2);
bAmount = (((bInner + 2) - bSpace + 5) / 8);
tSpace = 5 + (((tInner + 2) % 8) / 2);
tAmount = (((tInner + 2) - tSpace + 5) / 8);
for (i = [0:bAmount - 1], j = [0:tAmount - 1]) {
translate([ bSpace + i * 8, tSpace + j * 8, -1 ]) {
cube([ 6, 6, 3.5 ], false);
}
}
}
} else {
cube([ b, t, 1.5 ], false);
}
// front
translate([1,0,1]){
difference(){
cuboid([10,1,h-17], anchor=[-1,-1,-1], rounding=5, edges=RIGHT+TOP);
translate([7.5,0.4,2.5]){
rotate([0,-90,90]){
linear_extrude(height = 0.6) {
text(name, size = 5, font = "Arial:style=Bold");
}
}
}
}
translate([b-8,0,0]) {
cuboid([10,1,h-17], anchor=[-1,-1,-1], rounding=5, edges=LEFT+TOP);
}
// left
translate([ 0, 0, 1.5 ]) {
cuboid([ 1.5, t, h - 1.5 ], anchor = [ -1, -1, -1 ],
rounding = min(10, t - 1.5), edges = FRONT + TOP);
}
// right
translate([ b - 1.5, 0, 1.5 ]) {
cuboid([ 1.5, t, h - 1.5 ], anchor = [ -1, -1, -1 ],
rounding = min(10, t - 1.5), edges = FRONT + TOP);
}
// back
translate([ 1.5, t - 1.5, 1.5 ]) {
cuboid([ 10, 1.5, h -1.5], anchor = [ -1, -1, -1 ], rounding = 5,
edges = RIGHT + TOP);
translate([ b - 13, 0, 0 ]) {
cuboid([ 10, 1.5, h - 1.5 ], anchor = [ -1, -1, -1 ], rounding = 5,
edges = LEFT + TOP);
}
translate([ 10, 0, 0 ]) {
difference() {
difference() {
cube([ b - 23, 1.5, h - 1 ], false);
translate([ 0, -1, 15 ]) {
cuboid([ b - 23, 3, h - 12 ], anchor = [ -1, -1, -1 ],
rounding = 10, edges = [ LEFT + BOTTOM, RIGHT + BOTTOM ]);
}
}
translate([ -1, -1, 35 ]) { cube([ b - 21, 3, h - 20 ], false); }
}
}
}
// front
translate([ 1, 0, 1 ]) {
difference() {
cuboid([ 10, 1.5, h - 21 ], anchor = [ -1, -1, -1 ], rounding = 5,
edges = RIGHT + TOP);
translate([ 7.5, 0.4, 2.5 ]) {
rotate([ 0, -90, 90 ]) {
linear_extrude(height = 0.6) {
text(name, size = 5, font = "Arial:style=Bold");
}
}
}
}
translate([ b - 12, 0, 0 ]) {
cuboid([ 10, 1.5, h - 21 ], anchor = [ -1, -1, -1 ], rounding = 5,
edges = LEFT + TOP);
}
}
}
cardHolder(b,t,h,name);
cardHolder(b + 5, t + 3, h + 4, name);