37 lines
1006 B
OpenSCAD
37 lines
1006 B
OpenSCAD
small_dist = 0.1;
|
|
|
|
depth = 20;
|
|
width = 340;
|
|
height = 152;
|
|
thickness = 3;
|
|
tab_width = 20;
|
|
tab_hole_r = 2.5;
|
|
|
|
mount(depth, width, height, thickness);
|
|
|
|
module mount(depth, width, height, thickness){
|
|
union(){
|
|
tab(depth, tab_width, thickness, tab_hole_r);
|
|
translate([(width+tab_width)/2, 0, -height])
|
|
U(width, height, depth, thickness);
|
|
translate([width+tab_width, 0, 0])
|
|
tab(depth, tab_width, thickness, tab_hole_r);
|
|
}
|
|
}
|
|
|
|
module tab(depth, width, thickness, hole_r) {
|
|
difference(){
|
|
cube([width, depth, thickness], center=true);
|
|
cylinder(r=hole_r, h=thickness+small_dist, center=true);
|
|
}
|
|
}
|
|
|
|
module U(width, height, depth, thickness){
|
|
union(){
|
|
cube([width+2*thickness, depth, thickness], center=true);
|
|
translate([-(width+thickness)/2, 0, height/2])
|
|
cube([thickness, depth, height], center=true);
|
|
translate([(width+thickness)/2, 0, height/2])
|
|
cube([thickness, depth, height], center=true);
|
|
}
|
|
} |