chiark / gitweb /
startech-dell-usb-cable-retainer: wip
[reprap-play.git] / startech-dell-usb-cable-retainer.scad
1 // -*- C -*-
2
3 include <utils.scad>
4
5 body_depth = 40.15 + 4;
6 body_height = 16.78 + 0.75;
7
8 back_round_depth = 2.0;
9 back_round_rad = 8.0;
10 back_above_height = 3.0;
11 back_thick = 3.0;
12
13 conn_thick = 6.42 + 2.0;
14 wire_thick = 6.00 + 0.75;
15 total_depth = 63.82;
16
17 body_front_overlap = 3;
18
19 prong_higher = 1.5;
20 prong_depth = 5.0;
21 prong_width = 2.0;
22
23 base_thick = 3;
24
25 // calculated
26
27 epp0 = [ 0, -body_height/2 ];
28 epp1 = [ 0, -conn_thick/2 ];
29 epp2 = epp1 + [ -body_front_overlap, 0 ];
30 epp3 = [ +body_depth -total_depth, epp2[1] ];
31 epp4 = [ epp3[0], +conn_thick/2 +prong_higher ];
32 epp5 = epp4 + [ -prong_depth, 0 ];
33 epp6 = [ epp5[0], epp0[1] -base_thick ];
34 epp7 = [ epp2[0], epp6[1] ];
35 epp12 = [ +body_depth +back_round_rad, 0 ];
36 epp11 = [ +body_depth +back_round_depth, epp0[1] ];
37 epp10 = [ epp11[0], +back_above_height ];
38 epp9 = epp10 + [ +back_thick, 0 ];
39 epp8 = [ epp9[0], epp7[1] ];
40   
41 module MainElevation(){
42   polygon([epp0,
43            epp1,
44            epp3,
45            epp4,
46            epp5,
47            epp6,
48            epp8,
49            epp9,
50            epp10,
51            epp11
52            ]);
53   intersection(){
54     translate(epp12) circle(r= back_round_rad);
55     rectfromto(epp8,
56                epp10 + [-back_round_rad, 0]);
57   }
58 }
59
60 MainElevation();