Add mtgbox + ring light 2

This commit is contained in:
Kienan Stewart 2025-08-17 20:52:41 -04:00
parent c7741086f6
commit b3f3c04c1e
2 changed files with 121 additions and 0 deletions

83
mtgbox.scad Normal file
View File

@ -0,0 +1,83 @@
render_box=true;
render_divider=false;
render_lid=false;
mtg_deck_height = 3 * 25.4; // 3", sleeved, card + paper proxy
hollow_w = 95; // cards are 92 in sleeves
hollow_h = 70; // cards are 62 in sleeves
n_decks = 3;
wall_thickness = 5;
divider_depth = 2;
divider_epsilon = 1;
module divider() {
cube([hollow_w + 2*divider_epsilon, divider_depth, hollow_h+wall_thickness]);
}
module magnet() {
cylinder(h=1, d=3, $fn=100);
}
module box_magnets() {
translate([outer_w-3,3,outer_h-1+0.0001]) {
#magnet();
}
translate([outer_w-3,outer_d-3,outer_h-1+0.0001]) {
#magnet();
}
translate([3,3,outer_h-1+0.0001]) {
#magnet();
}
translate([3,outer_d-3,outer_h-1+0.0001]) {
#magnet();
}
}
internal_space_w = hollow_w;
internal_space_depth = mtg_deck_height * n_decks;
if (n_decks > 1) {
internal_space_depth = internal_space_depth + divider_depth * (n_decks-1);
}
internal_space_height = hollow_h;
outer_w = internal_space_w + 2*wall_thickness;
outer_d = internal_space_depth + 2*wall_thickness;
outer_h = internal_space_height + 2*wall_thickness;
dividers = n_decks - 1;
module box() {
difference() {
cube([outer_w, outer_d, outer_h]);
translate([wall_thickness, wall_thickness, wall_thickness]) {
cube([internal_space_w, internal_space_depth, internal_space_height+wall_thickness+.01]);
};
for(div_n = [1 : dividers]) {
translate([wall_thickness - divider_epsilon, wall_thickness +div_n*mtg_deck_height + divider_depth/2, wall_thickness]) {
#divider();
};
}
box_magnets();
};
}
module lid() {
difference() {
cube([outer_w, outer_d, wall_thickness]);
translate([0, 0, -outer_h+wall_thickness]) {
box_magnets();
};
}
}
if (render_box) {
box();
}
if (render_lid) {
lid();
}
if (render_divider) {
divider();
}

38
ring light part 2.scad Normal file
View File

@ -0,0 +1,38 @@
// 92x59 hole mm
// 10mm border
// 4" under table maybe? 100mm ish, w/ 4 screw holes
// maybe like 25mm thick?
hole_w = 92;
hole_l = 59;
trim_w = 10;
undertable_l = 100;
depth = 30;
width = hole_w + 2 * trim_w;
length = undertable_l + trim_w * 2 + hole_l;
screw_inset = 20;
// #8 2" screw
screw_hole_diameter = 3.45;
#difference() {
cube([width, length, depth]);
translate([trim_w, trim_w, 0]) {
cube([hole_w, hole_l, depth]);
};
translate([width-screw_inset,length-screw_inset,0]) {
cylinder(depth*2, d = screw_hole_diameter, center=true, $fn=100);
};
translate([screw_inset,length-screw_inset,0]) {
cylinder(depth*2, d = screw_hole_diameter, center=true, $fn=100);
};
translate([width-screw_inset,2*trim_w+hole_l+screw_inset,0]) {
cylinder(depth*2, d = screw_hole_diameter, center=true, $fn=100);
};
translate([screw_inset,2*trim_w+hole_l+screw_inset,0]) {
cylinder(depth*2, d = screw_hole_diameter, center=true, $fn=100);
};
};