chiark / gitweb /
sewing-table: Leg: rework wip
[reprap-play.git] / sewing-table.scad.m4
index 09bfc586825e33e0a33a89319cc12c455effbd2b..eacbc3d5484ebfddb9a3c95d8d9d36d1f6bdf015 100644 (file)
@@ -30,12 +30,16 @@ interlock_fine_lenslop = 1.0;
 
 demo_slop = 0.1;
 
-leg_height = 50;
+leg_height = 62;
 
 leg_hole_dia = 5 + 0.75;
 leg_big_dia = 37;
 leg_bot_dia = 15;
 leg_top_flat_z = 5;
+leg_top_thick = 10;
+
+leg_midspc_dia = 20;
+leg_bot_thick = 10;
 
 leg_fin_top_w = 5;
 leg_fin_bot_w = 5;
@@ -43,6 +47,8 @@ leg_fin_bot_rad = 30;
 leg_fin_bot_flat_z = 5;
 
 leg_n_fins = 4;
+leg_n_tubules = 4;
+leg_tubule_dia = 4;
 
 // cutout
 
@@ -132,6 +138,8 @@ interlock_sq_adj = 0.2; // arbitrary
 leg_fin_top_rad = sqrt( pow(leg_big_dia/2,2) -
                        pow(leg_fin_top_w/2,2) );
 
+leg_tubule_pos_rad = leg_big_dia/2 * 0.6;
+
 m4_define(`POST_TCROSSSZ',
           `2*( tile_hard_edge_hole_dist - test_edge + 1 )')
 
@@ -690,7 +698,7 @@ module Leg(){ ////toplevel
       hull(){
        mirror([0,0,1])
          cylinder(r= leg_big_dia/2, height=leg_top_flat_z, $fn=100);
-       translate([0,0, -leg_height])
+       translate([0,0, -leg_top_thick])
          cylinder(r= leg_bot_dia/2, height=1, $fn=100);
       }
       for (rot=[0: 360/leg_n_fins : 359]) rotate(rot) {
@@ -709,6 +717,14 @@ module Leg(){ ////toplevel
     }
     mirror([0,0,1]) translate([0,0,-1])
       cylinder(r= leg_hole_dia/2, h=leg_height+2, $fn=30);
+    mirror([0,0,1]) translate([0,0,leg_top_thick - 0.1])
+      cylinder(r= leg_midspc_dia/2,
+              h=leg_height - leg_top_thick - leg_bot_thick,
+              $fn=30);
+    for (rot=[45: 360/leg_n_tubules : 359]) rotate(rot) {
+       mirror([0,0,1]) translate([ leg_tubule_pos_rad, 0, -1])
+         cylinder(r= leg_tubule_dia/2, h=leg_height+2, $fn=20);
+      }
   }
 }