chiark / gitweb /
mic-table-clamp: test mode
[reprap-play.git] / mic-table-clamp.scad
index 2f5b737a08ad589ac9849d58f0cdec64684d1d53..3f7c05f2b592276725d0de05c68dad611c9c5a94 100644 (file)
@@ -9,30 +9,17 @@ include <camera-mount.scad>
 positive_dia = inch * 3/8. - 0.375;
 positive_l = inch * 1/2.;
 
-stem_l = 7;
+stem_l = 40;
 stem_dia = 12;
-
-base_th = 3;
-base_dia = 60;
-
-module Base(){
-  translate([0,0,-0.1])
-    english_thread(diameter=positive_dia/inch, threads_per_inch=16,
-                  leadin=1, test=$test,
-                  length= (positive_l + 0.1) / inch);
-
-  rotate([180,0,0]) {
-    cylinder(r= stem_dia/2 * 1/(0.5 * sqrt(3)),
-            h = stem_l + 1,
-            $fn=6);
-    translate([0,0, stem_l])
-      cylinder(r= base_dia/2, h= base_th);
-  }
-}
+stem_th = 3;
+stem_ceil = 2;
+stem_base_th  = 4;
+stem_base_dia = 25;
+stem_inner_l = 30;
 
 thread_nom = 8;
 thread_pitch = 1.25;
-thread_act = thread_nom + 0.250;
+thread_act = thread_nom + 0.600;
 
 wingnut_th = 5;
 wingnut_wall = 4;
@@ -41,16 +28,41 @@ wingnut_wing_xrad = 8;
 wingnut_wing_xh = 5;
 wingnut_wing_th = 3;
 
-//$test= true;
-$test= false;
+$test= true;
+///$test= false;
 
-$fa= 3;
-$fs= 0.2;
+//$fa= 3;
+//$fs= 0.2;
 
 // calculated
 
 wingnut_cnr = wingnut_wing_th/2 -0.1;
 
+module OurThread(l){
+  translate([0,0,-0.01])
+    metric_thread(diameter=thread_act, pitch=thread_pitch,
+                 leadin=3, internal=true,
+                 test=$test, length=l);
+}
+
+module Stem(){
+  translate([0,0, stem_l -0.1])
+    english_thread(diameter=positive_dia/inch, threads_per_inch=16,
+                  leadin=1, test=$test,
+                  length= (positive_l + 0.1) / inch);
+
+  difference(){
+    union(){
+      cylinder(r= stem_dia/2 * 1/(0.5 * sqrt(3)),
+              h = stem_l,
+              $fn=6);
+      cylinder(r= stem_base_dia/2,
+              h = stem_base_th);
+    }
+    OurThread(stem_inner_l);
+  }
+}
+
 module Wingnut(){
   difference(){
     union(){
@@ -71,14 +83,12 @@ module Wingnut(){
       square(wingnut_wing_mindia, center=true);
     translate([0,0, wingnut_th])
       rotate([180,0,0])
-      translate([0,0,-0.01])
-      metric_thread(diameter=thread_act, pitch=thread_pitch,
-                   leadin=3, internal=true,
-                   test=$test, length=wingnut_th+3);
+      OurThread(wingnut_th+3);
     mirror([0,0,1])
       linear_extrude(height=5)
       square(center=true, wingnut_wing_mindia*2);
   }
 }
 
-Wingnut();
+//Wingnut();
+Stem();