chiark / gitweb /
axlepin break out from filamentspool
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Wed, 17 Oct 2012 17:23:32 +0000 (18:23 +0100)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Wed, 17 Oct 2012 17:23:32 +0000 (18:23 +0100)
axlepin.scad [new file with mode: 0644]
filamentspool.scad

diff --git a/axlepin.scad b/axlepin.scad
new file mode 100644 (file)
index 0000000..d399092
--- /dev/null
@@ -0,0 +1,16 @@
+// -*- C -*-
+
+function AxlePin_holerad() = 2;
+
+module AxlePin(axlerad, pinlen, holerad=2, tabthick=5, slop=0.5){
+  pinr = holerad - slop;
+  intersection(){
+    translate([0, 0, pinr*0.7]) {
+      translate([0, -pinlen/2, 0]) rotate([-90,0,0])
+       cylinder(r=pinr, h=pinlen, $fn=10);
+      translate([-tabthick, axlerad, -holerad])
+       cube([tabthick*2, holerad*2, holerad*2]);
+    }
+    translate([-50,-50,0]) cube([100,100,50]);
+  }
+}
index 55da1ac..59e3e70 100644 (file)
@@ -76,6 +76,7 @@ ratchetpawl=ratchetstep-ratchettooth-bigslop*2;
 include <doveclip.scad>
 include <cliphook.scad>
 include <filamentteeth.scad>
+include <axlepin.scad>
 
 channelwidth = prongthick + slop;
 channeldepth = prongwidth + ratchettoothheight;
@@ -253,17 +254,8 @@ module ArmExtender(){ ////toplevel
                   hb=doveclipheight);
 }
 
-module AxlePin(){ ////toplevel
-  pinr = axlepinrad - slop;
-  intersection(){
-    translate([0, 0, pinr*0.7]) {
-      translate([0, -washerrad, 0]) rotate([-90,0,0])
-       cylinder(r=pinr, h=washerrad*2, $fn=10);
-      translate([-axlepintabrad, hubaxlerad, -axlepinrad])
-       cube([axlepintabrad*2, axlepinrad*2, axlepinrad*2]);
-    }
-    translate([-50,-50,0]) cube([100,100,50]);
-  }
+module FsAxlePin(){ ////toplevel
+  AxlePin(hubaxlerad, washerrad*2, axlepinrad, axlepintabrad, slop);
 }
 
 module Axle(){ ////toplevel