chiark / gitweb /
rope-adjuster: wip, teeth
[reprap-play.git] / rope-adjuster.scad
1 // -*- C -*-
2
3 include <utils.scad>
4
5 hole_dia = 10;
6 around_hole = 5;
7 thick = 4;
8 lever_len = 65;
9
10 teeth_n = 4;
11 teeth_bite = 4;
12 teeth_pitch = 4;
13 teeth_gap = 2;
14 teeth_back = 2;
15 teeth_height = 12;
16
17 module Circles(r) {
18   for (x = [-1,+1] * 0.5 * lever_len) {
19     translate([x, 0])
20       circle(r);
21   }
22 }
23
24 module Plan() {
25   difference(){
26     hull(){
27       Circles(hole_dia/2 + around_hole);
28     }
29     Circles(hole_dia/2);
30   }
31 }
32
33 module TeethPlan(){
34   for (m=[0,1]) {
35     mirror([m,0]) {
36       for (i= [ 0: teeth_n-1 ]) {
37         translate([teeth_gap/2, teeth_pitch*i])
38           polygon([[ 0,0 ],
39                    [ teeth_bite, 0 ],
40                    [ teeth_bite, teeth_pitch ]]);
41       }
42     }
43   }
44 }
45
46 module Adjuster(){
47   linextr(0,thick)
48     Plan();
49   linextr(thick - 0.1, thick + teeth_height)
50     TeethPlan();
51 }
52
53 Adjuster();