chiark / gitweb /
filamenttrestle adjustments
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Wed, 17 Oct 2012 20:41:03 +0000 (21:41 +0100)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Wed, 17 Oct 2012 20:41:03 +0000 (21:41 +0100)
filamenttrestle.scad

index 2c54245..799bf4e 100644 (file)
@@ -1,17 +1,21 @@
 // -*- C -*-
 
 spoolwidth = 80; // fixme needs to be measured
-trestleheight = 80; // fixme needs to be checked
-trestlebase = 80; // fixme needs to be checked
+spoolinnerrad = 25; // fixme needs to be checked
+spoolouterrad = 60; // fixme needs to be checked
 
 include <doveclip.scad>
 include <axlepin.scad>
 
+spoolradclear = 10;
+
 spoolinnerslop = 2;
 
 barrad = 7;
 barwasherrad = 17;
 
+hubbasethick = 4;
+
 legw = 12;
 plugl = 20;
 plugwmin = 3;
@@ -37,10 +41,14 @@ pinstraightlen = 10;
 
 spoolouterpad = AxlePin_holerad()*2 * 1.5;
 spoolbarlen = spoolwidth +
-  2*(Washer_thick() + AxlePin_holerad() + spoolinnerslop + spoolouterpad);
+  2*(Washer_thick() + hubbasethick + AxlePin_holerad()
+     + spoolinnerslop + spoolouterpad);
   barz = barrad * 0.5;
-axlepin_x = spoolwidth/2 + Washer_thick() + spoolinnerslop +
-  AxlePin_holerad()*0.5;
+axlepin_x = spoolwidth/2 + hubbasethick +
+  Washer_thick() + spoolinnerslop + AxlePin_holerad()*0.5;
+
+trestleheight = spoolouterrad + spoolradclear - barz;
+trestlebase = trestleheight * 1.2;
 
 module Plug(d=0){
   dw = d;
@@ -187,16 +195,25 @@ module TestKit(){ ////toplevel
   }
 }
 
+module DemoSpool(){
+  rotate([0,90,0]) translate([0,0,-spoolwidth/2])
+    difference(){
+      cylinder(r=spoolouterrad, h=spoolwidth);
+      translate([0,0,-1]) cylinder(r=spoolinnerrad, h=spoolwidth+2);
+    }
+}
+
 module Demo(){
-  %Bar();
+  Bar();
   for (mir=[0,1]) {
     mirror([mir,0,0]) {
-      %translate([spoolbarlen/2,0,0]) rotate([90,0,90]) Trestle();
-      translate([spoolwidth/2 + spoolinnerslop/4, 0, barz])
+      translate([spoolbarlen/2,0,0]) rotate([90,0,90]) Trestle();
+      translate([spoolwidth/2 + hubbasethick + spoolinnerslop/4, 0, barz])
        rotate([0,90,0]) AxleWasher();
       translate([axlepin_x, 0, barz]) rotate([90,0,90]) FtAxlePin();
     }
   }
+  %translate([0,0,barz]) DemoSpool();
 }
 
 //Bar();