Files
glovebox/models/glovebox_shell/skeleton_beam.scad

49 lines
2.3 KiB
OpenSCAD

include <../../config.scad>;
use <../common/beam_hollow_rectangular.scad>;
module skeleton_beam(length, suppress_shopping_outputs = false) {
d_hole_centre = 5.5;
w_slot_min = 6;
color("silver") // , 0.4)
difference() {
cube([D_BEAM_SKELETON, D_BEAM_SKELETON, length], center = true);
cylinder(length, d_hole_centre / 2, d_hole_centre / 2, center = true);
for (index_side_beam = [0 : 1 : 3]) {
rotate([0, 0, 90 * index_side_beam]) {
union() {
/*
translate([-t / 2 + D_BEAM_SKELETON / 2, 0, 0]) cube([t, w_slot_min, length], center = true);
translate([-t / 2 + D_BEAM_SKELETON / 2, 0, 0]) cube([t, w_slot_min, length], center = true);
*/
}
for (index_side_slot = [0 : 1 : 1]) {
mirror([0, index_side_slot, 0]) linear_extrude(length, center = true) polygon([
[D_BEAM_SKELETON / 2 - T_BEAM_SKELETON - DEPTH_SLOT_BEAM_SKELETON, 0]
, [D_BEAM_SKELETON / 2 - T_BEAM_SKELETON - DEPTH_SLOT_BEAM_SKELETON, w_slot_min / 2]
, [D_BEAM_SKELETON / 2 - T_BEAM_SKELETON, w_slot_min / 2 + DEPTH_SLOT_BEAM_SKELETON]
, [D_BEAM_SKELETON / 2 - T_BEAM_SKELETON, w_slot_min / 2]
, [D_BEAM_SKELETON / 2, w_slot_min / 2]
, [D_BEAM_SKELETON / 2, 0]
]);
}
}
}
}
// cube([D_BEAM_SKELETON, D_BEAM_SKELETON, length], center = true);
// beam_hollow_rectangular(length, D_BEAM_SKELETON, D_BEAM_SKELETON, T_BEAM_SKELETON, true);
// Shopping
if (!suppress_shopping_outputs) {
echo(str("Skeleton beam: Aluminium box section 20mm x 20mm x ", length, "mm - x1"));
}
}
$fn = 100;
// outputs
// skeleton_beam(500, false);
// skeleton_beam(R_INTERNAL[0], false); // X
skeleton_beam(R_EXTERNAL[1], false); // Y
// skeleton_beam(R_INTERNAL[2], false); // Z
// skeleton_beam(L_LEG, false); // chamber leg
// skeleton_beam(L_LEG - D_BEAM_SKELETON, false); // base support leg
// skeleton_beam(R_EXTERNAL[1], false); // base support