4 mainhole_thick=remote_thick+1;
10 base_width=remote_width-base_margin*2;
11 base_height=remote_height-base_margin*2;
14 // origin is base of mainhole
17 translate([ -remote_width/2, 0, 0 ])
19 size=[ remote_width, remote_height, mainhole_thick ] );
22 module hhook(extent) {
24 translate([ -hook_stem_thick, 0, -base_thick*2 ])
27 hook_stem_thick+base_margin+base_edgewidth-1,
29 base_thick*2 + mainhole_thick + hook_hook_thick
31 translate([hook_hook_len, -5, 0])
32 cube(center=false, size=[ 20, extent+10, 30 ]);
36 module hhookside(extent) {
37 translate([ -remote_width/2, 0, 0 ])
41 module hhookbot(extent) {
42 rotate(a=90, v=[0,0,1]) hhook(extent);
46 translate([0,70,0]) hhookside(15);
47 translate([0,10,0]) hhookside(15);
48 translate([-10,0,0]) hhookbot(15);
52 for (y=[-35 : 35 : +40])
54 rotate(v=[0,0,1],a=45)
55 cube(center=true, [ 5,200,200 ]);
59 translate([ 0, base_height/2 + base_margin, -base_thick/2 ])
62 [ base_width, base_height, base_thick+10 ]);
65 cube(center=true, [ 200,200,200 ]);
67 [ base_width - base_edgewidth*2,
68 base_height - base_edgewidth*2,
73 mirror([1,0,0]) slashes();
76 // translate([-base_width/2, base_margin, -base_thick*2])
77 // cube(center=false, [base_width,base_height,base_thick+10]);
80 screw_ys=[ 20, remote_height-30 ];
84 mirror([1,0,0]) hstuff();
86 for (y=screw_ys) translate([0, y, -20])
87 cylinder(r=7.5, h=21);
90 module screwhole(holedia, csdia) {
91 // screw goes along z axis downwards
92 // origin is base of countersink
93 // results are positive, so this should be subtracted
94 translate([0,0,-100]) cylinder(h=200, r=holedia/2);
95 cylinder(h=100, r=csdia/2);
99 // this is the actual thing we want
103 for (y=screw_ys) translate([0, y, -base_thick+2])
105 translate([0,0,-50 - base_thick])
106 cube(center=true,[300,300,100]); // print bed
112 cube(center=true, [100,55,100]);