chiark / gitweb /
fac82b7f3c95e5e614a69100d7e4075fb8d0557e
[reprap-play.git] / filamenttrestle.scad
1 // -*- C -*-
2
3 spoolwidth = 80; // fixme needs to be measured
4
5 include <doveclip.scad>
6
7 spoolwidthgap = 2;
8 barrady = 5;
9 barradz = 7;
10 guidewidth = 3;
11 guiderad = 20;
12 clipdepth = 16;
13 clipcount = 3;
14
15 module Bar(){
16   spoolw = spoolwidth + spoolwidthgap*2;
17   barz = barradz * 0.5;
18   biggestw = spoolw + 50;
19
20   intersection(){
21     for (mir=[0,1]) {
22       mirror([mir,0,0]) {
23         translate([0,0,barz]) {
24           scale([1,barrady,barradz]) translate([-1,0,0])
25             rotate([0,90,0]) cylinder(r=1, h=spoolw/2+2, $fn=30);
26           translate([spoolw/2,0,0])
27             rotate([0,90,0]) cylinder(r=guiderad, h=guidewidth, $fn=60);
28         }
29         translate([spoolw/2 + guidewidth +
30                    DoveClipPairSane_width(clipcount)/2 - 0.1,
31                    clipdepth/2, -0.01])
32           rotate([90,90,0])
33             DoveClipPairSane(h=clipdepth, count=clipcount, baseextend=barrady);
34       }
35     }
36     translate([-biggestw/2, -50, 0])
37       cube([biggestw, 100, 100]);
38   }
39 }
40
41 Bar();