chiark / gitweb /
toolbox-inserts: ShaftExtender: wip
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Tue, 27 May 2025 23:21:09 +0000 (00:21 +0100)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Tue, 27 May 2025 23:21:09 +0000 (00:21 +0100)
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
toolbox-inserts.scad

index c989491c0b4e3ca02a488f07994d8d9a01424ee4..cbe2ccac19581c19f4391a81504f12f0ddfae9a2 100644 (file)
@@ -63,6 +63,7 @@ universal_joint_d_fat = 14.6;
 
 shaftextender_head_d = 12.6 + 0.5;
 shaftextender_shaft_d = 8.9 + 0.25;
+shaftextender_main_len = 51.8 + 0.5;
 
 bit_pitch_x = 25.4 * 2 / 5;
 bit_pitch_y = 25.4 * 3 / 4;
@@ -557,14 +558,19 @@ module UniversalJointHolder() { ////toplevel
 //-------------------- ShaftExtender ----------
 
 module ShaftExtenderComponent() {
-  children(0);
+  dz = shaftextender_head_d - shaftextender_shaft_d;
+  slope = dz / shaftextender_main_len;
+  multmatrix([[1,     0, 0, 0],
+             [0,     1, 0, 0],
+             [slope, 0, 1, -dz]])
+    children(0);
 }
 module ShaftExtenderPositive() { ////toplevel
   ShaftExtenderComponent()
     linextr_x_yz(0, 20)
     circle(r = shaftextender_head_d /2);
   ShaftExtenderComponent()
-    linextr_x_yz(0, 51.8 + 0.5)
+    linextr_x_yz(0, shaftextender_main_len)
     circle(r = shaftextender_shaft_d /2);
 }