Files
glovebox/models/glovebox_rear_panel/glovebox_rear_panel.scad

63 lines
2.7 KiB
OpenSCAD

include <../../config.scad>;
use <./vent_gasket_holes.scad>;
use <../common/metric_bolt.scad>;
use <../common/metric_bolt_functions.scad>;
module glovebox_rear_panel() {
r_panel = [
R_INTERNAL[0] + OVERLAP_CLEAR_PANEL_WITH_SKELETON_EACH_SIDE * 2
, T_HDPE_SHEET
, R_INTERNAL[2] + OVERLAP_CLEAR_PANEL_WITH_SKELETON_EACH_SIDE * 2
];
union() {
/*
difference() {
// clear panel
color("white", 0.4) translate([0, 0, 0]) cube(r_panel, center = true);
for (index_side = [0 : 1 : 1]) {
mirror([index_side, 0, 0]) {
translate([R_INTERNAL[0] / 4, 0, -R_INTERNAL[2] / 4]) {
// ventilation holes
rotate([90, 0, 0]) cylinder(T_HDPE_SHEET, D_VENT_DUCT / 2, D_VENT_DUCT / 2, center = true);
// vent duct fastenings
rotate([90, 0, 0]) vent_gasket_holes();
}
}
}
}
*/
color("white", 1) import("./glovebox_rear_panel_only.stl");
// gasket
height_nut_vent = get_metric_bolt_head_height(SIZE_BOLT_VENT);
length_bolt_vent = T_WASHER_VENT * 2 + T_GASKET_RUBBER + T_HDPE_SHEET + height_nut_vent + OFFSET_NUT_FROM_BOLT_END;
for (index_side = [0 : 1 : 1]) {
mirror([index_side, 0, 0]) {
// Vent gasket
translate([
R_INTERNAL[0] / 4
, r_panel[1] / 2
, -R_INTERNAL[2] / 4
]) {
color("black") translate([0, T_GASKET_RUBBER / 2, 0]) import("./vent_gasket.stl");
// Fasteners
for (index_hole = [0 : 1 : COUNT_BOLTS_PER_VENT - 1]) {
rotate([0, 360 / COUNT_BOLTS_PER_VENT * index_hole, 0]) translate([D_VENT_DUCT / 2, 0, D_VENT_DUCT / 2])
{
// Bolt and nut
translate([0, length_bolt_vent / 2 - r_panel[1] - T_WASHER_VENT, 0]) rotate([90, 0, 0]) metric_bolt(SIZE_BOLT_VENT, length_bolt_vent, true, OFFSET_NUT_FROM_BOLT_END);
// Washers
translate([0, -r_panel[1] - T_WASHER_VENT / 2, 0]) rotate([90, 0, 0]) washer(T_WASHER_VENT, D_WASHER_VENT, SIZE_BOLT_VENT, centre = true);
translate([0, T_GASKET_RUBBER + T_WASHER_VENT / 2, 0]) rotate([90, 0, 0]) washer(T_WASHER_VENT, D_WASHER_VENT, SIZE_BOLT_VENT, centre = true);
}
}
}
}
}
}
// Shopping
}
// $fn = 250;
// test output
glovebox_rear_panel();