item boxes
This commit is contained in:
118
HeroesKeepOut/Box-Items.scad
Normal file
118
HeroesKeepOut/Box-Items.scad
Normal file
@@ -0,0 +1,118 @@
|
||||
include <BOSL2/std.scad>
|
||||
|
||||
// Parameter for console overwrite
|
||||
b = 178;
|
||||
t = 38;
|
||||
h = 20;
|
||||
|
||||
module box(b, t, h) {
|
||||
difference() {
|
||||
difference() {
|
||||
// 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 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);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// clean area for card pocket
|
||||
translate([b- 79, -1, -1]) {
|
||||
cube([77.4, 13, 41], false);
|
||||
}
|
||||
}
|
||||
|
||||
// deviders
|
||||
translate([150, 12, 1.5]) {
|
||||
cube([1, 24.5, 18.5], false);
|
||||
}
|
||||
translate([127, 12, 1.5]) {
|
||||
cube([1, 24.5, 18.5], false);
|
||||
}
|
||||
translate([104, 12, 1.5]) {
|
||||
cube([1, 24.5, 18.5], false);
|
||||
}
|
||||
translate([81, 1.5, 1.5]) {
|
||||
cube([1, 35, 18.5], false);
|
||||
}
|
||||
translate([58, 1.5, 1.5]) {
|
||||
cube([1, 35, 18.5], false);
|
||||
}
|
||||
|
||||
// card pocket
|
||||
translate([b- 80, 0, ]) {
|
||||
difference() {
|
||||
cube([78.4, 12, 40], false);
|
||||
translate([1.5, -1, 1.5]) {
|
||||
cube([75.4, 11.5, 41], false);
|
||||
}
|
||||
}
|
||||
translate([1.5, 0, 1.5]) {
|
||||
cuboid([6, 1.5, 38.5], anchor = [-1, -1, -1], rounding = 5, edges = TOP + RIGHT);
|
||||
}
|
||||
translate([70.9, 0, 1.5]) {
|
||||
cuboid([6, 1.5, 38.5], anchor = [-1, -1, -1], rounding = 5, edges = TOP + LEFT);
|
||||
}
|
||||
translate([7.5, 0, 1.5]) {
|
||||
difference() {
|
||||
cube([63.4, 1.5, 11], false);
|
||||
translate([0, -1, 6]) {
|
||||
cuboid([63.4, 4.5, 6], anchor = [-1, -1, -1], rounding = 5, edges = [ BOTTOM + LEFT, BOTTOM + RIGHT]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
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);
|
||||
Reference in New Issue
Block a user