chiark / gitweb /
osstest-arm-net-bracket: add cutouts for "washers" (not much change right now but...
[reprap-play.git] / osstest-arm-net-bracket.scad
1 // -*- C -*-
2
3 holedist = 64;
4 tonguewidth = 10;
5 tongue2width = 15;
6 totaldepth = 26;
7 tongue2depth = 35;
8 thick = 4;
9 tabover = 7;
10 tabunder = 15;
11
12 tabside = 7;
13
14 tonguethick = 4;
15 tongue2thick = 5;
16 strapthick = 2;
17 strapwidth = 5;
18 ridgewidth = 2;
19
20 holedia = 3.5;
21
22 tongue2x = tongue2width - holedist;
23
24 module Tongue(tw,tt,ad,slots=2){
25   y0=thick+0.1;
26   yn=ad-ridgewidth-strapwidth;
27   difference(){
28     translate([-tw, 0, 0])
29       cube([tw, ad, tt+strapthick]);
30     for (yi=[0:slots-1])
31       translate([-tw-1, y0 + (yn-y0)*yi/(slots-1), tt])
32         cube([tw+2, strapwidth, strapthick+1]);
33   }
34 }
35
36 module Object(){
37   difference(){
38     translate([-holedist-tabside, 0, 0])
39       cube([tabside*2+holedist, thick, tabunder+tabover]);
40     for (x=[-holedist,0])
41       translate([x, 0, tabunder]) {
42         translate([0, -1, 0]) {
43           rotate([-90,0,0]) {
44             cylinder(r= holedia/2+0.5, h=thick+2, $fn=20);
45           }
46         }
47         translate([0, 19.95 + thick, 0])
48           cube(center=true,[10,40,10]);
49       }
50   }
51   Tongue(tonguewidth,tonguethick,totaldepth,3);
52   translate([tongue2x,0,0])
53     Tongue(tongue2width,tongue2thick,tongue2depth+thick,5);
54 }
55
56 Object();