68 lines
2.0 KiB
OpenSCAD
68 lines
2.0 KiB
OpenSCAD
inner_box = [15, 3, 20];
|
|
wall_strength = 2;
|
|
|
|
|
|
|
|
|
|
difference() {
|
|
difference() {
|
|
cube(size=[inner_box[0]+wall_strength*2, inner_box[1]+wall_strength*2, inner_box[2]+wall_strength], center=true);
|
|
translate([0,0,wall_strength]) {
|
|
cube(size=[inner_box[0], inner_box[1], inner_box[2]+wall_strength], center=true);
|
|
};
|
|
};
|
|
|
|
translate([0, wall_strength / 2, (inner_box[2]/2 - wall_strength/2)]) {
|
|
cube(size=[inner_box[0] + wall_strength * 2, inner_box[1] + wall_strength, 4], center=true);
|
|
};
|
|
|
|
|
|
translate([0, -(wall_strength/2 + inner_box[1]/2), (((inner_box[2]- (8+5.5))/2) -inner_box[2]/2 + wall_strength/2 + 5.5) ]) {
|
|
cube(size=[inner_box[0]-3.5, wall_strength, inner_box[2]- (8+5.5)], center=true);
|
|
};
|
|
};
|
|
|
|
translate([inner_box[0]/2+wall_strength/2,inner_box[1]/2+wall_strength,(inner_box[2]/2+wall_strength/2)-4]) {
|
|
rotate([180,0,90]) {
|
|
translate([-(wall_strength+inner_box[1]), -wall_strength/2, 0]){
|
|
polyhedron(
|
|
points=[ [0,0,0],
|
|
[inner_box[1]+wall_strength,0,0],
|
|
[inner_box[1]+wall_strength,wall_strength,0],
|
|
[0,wall_strength,0],
|
|
[0,0,-4],
|
|
[0,wall_strength,-4],
|
|
],
|
|
faces=[ [0,1,2,3],
|
|
[5,4,0,3],
|
|
[4,1,0],
|
|
[3,2,5],
|
|
[2,1,4,5],
|
|
]
|
|
);
|
|
}
|
|
}
|
|
}
|
|
|
|
translate([-(inner_box[0]/2+wall_strength/2),inner_box[1]/2+wall_strength,(inner_box[2]/2+wall_strength/2)-4]) {
|
|
rotate([180,0,90]) {
|
|
translate([-(wall_strength+inner_box[1]), -wall_strength/2, 0]){
|
|
polyhedron(
|
|
points=[ [0,0,0],
|
|
[inner_box[1]+wall_strength,0,0],
|
|
[inner_box[1]+wall_strength,wall_strength,0],
|
|
[0,wall_strength,0],
|
|
[0,0,-4],
|
|
[0,wall_strength,-4],
|
|
],
|
|
faces=[ [0,1,2,3],
|
|
[5,4,0,3],
|
|
[4,1,0],
|
|
[3,2,5],
|
|
[2,1,4,5],
|
|
]
|
|
);
|
|
}
|
|
}
|
|
}
|