Standard box
set standard box without seperation
This commit is contained in:
121
Box.scad
121
Box.scad
@@ -1,85 +1,70 @@
|
||||
include <BOSL2/std.scad>
|
||||
|
||||
// Parameter for console overwrite
|
||||
b = 58;
|
||||
t = 3;
|
||||
h = 88;
|
||||
name = "Cards";
|
||||
b = 79.8;
|
||||
t = 68.5;
|
||||
h = 22.5;
|
||||
|
||||
module cardHolder(b, t, h, name) {
|
||||
|
||||
// floor
|
||||
bInner = b - 10;
|
||||
tInner = t - 10;
|
||||
if (bInner >= 6 && tInner >= 6) {
|
||||
module box(b, t, h) {
|
||||
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);
|
||||
// base
|
||||
cuboid([ b, t, h], anchor = [ -1, -1, -1 ],rounding = 1,edges = [ TOP, FRONT + LEFT, FRONT + RIGHT, BACK + LEFT, BACK + RIGHT ]);
|
||||
|
||||
// inner
|
||||
translate([ 5, 1.5, 1.5 ]) {
|
||||
cuboid([ b - 10, t - 3, h - 0.5 ], anchor = [ -1, -1, -1 ],
|
||||
rounding = 8, edges = [ BOTTOM + FRONT, BOTTOM + LEFT, BOTTOM + BACK, BOTTOM + RIGHT, FRONT + LEFT, FRONT + RIGHT, BACK + LEFT, BACK + RIGHT ]);
|
||||
}
|
||||
|
||||
// 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 ]);
|
||||
// left lower
|
||||
sideCut(b,t);
|
||||
// left upper
|
||||
translate([0, 0, h]) {
|
||||
mirror([0, 0, 1]) {
|
||||
sideCut(b, t);
|
||||
}
|
||||
}
|
||||
translate([ -1, -1, 35 ]) { cube([ b - 21, 3, h - 20 ], false); }
|
||||
// right lower
|
||||
translate([b, 0, 0]) {
|
||||
mirror([1, 0, 0]) {
|
||||
sideCut(b,t);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// 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");
|
||||
// right upper
|
||||
translate([b, 0, h]) {
|
||||
mirror([1, 0, 0]) {
|
||||
mirror([0, 0, 1]) {
|
||||
sideCut(b, t);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
translate([ b - 12, 0, 0 ]) {
|
||||
cuboid([ 10, 1.5, h - 21 ], anchor = [ -1, -1, -1 ], rounding = 5,
|
||||
edges = LEFT + TOP);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
cardHolder(b + 5, t + 3, h + 4, name);
|
||||
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 + 5, t + 3, h + 4);
|
||||
|
||||
52
BoxLid.scad
Normal file
52
BoxLid.scad
Normal file
@@ -0,0 +1,52 @@
|
||||
include <BOSL2/std.scad>
|
||||
|
||||
// Parameter for console overwrite
|
||||
b = 79.8;
|
||||
t = 68.5;
|
||||
|
||||
module box(b, t) {
|
||||
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);
|
||||
}
|
||||
sideCut(b,t);
|
||||
translate([b, 0, 0]) {
|
||||
mirror([1, 0, 0]) {
|
||||
sideCut(b,t);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
module sideCut(b,t) {
|
||||
difference() {
|
||||
translate([0,0,1.5]) {
|
||||
cube([3, 0.75 * t - 2.5,6.6], false);
|
||||
}
|
||||
translate([2.3,t/4+2,0]) {
|
||||
rotate([-90,-90,0]) {
|
||||
linear_extrude(0.5 * t) {
|
||||
polygon(points=[[-1,-1], [-1,1], [7, 1], [5.1,-1]]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
translate([0,0,1.5]) {
|
||||
cube([1.4, t, 3.4], false);
|
||||
}
|
||||
}
|
||||
|
||||
box(b + 5, t + 3);
|
||||
Reference in New Issue
Block a user