chiark / gitweb /
sewing-table: jig: properly conditionalise post holes!
[reprap-play.git] / sewing-table.scad.m4
index e2e5fcae66e926347b1cf6f0a91593ec2125d38b..b15b35ad8126c17e89067bdf17684a43d9f914fb 100644 (file)
@@ -7,6 +7,8 @@ ply_th = 18;
 ply_hole_dia = 15;
 ply_edge_min = 10;
 
+ply_hole_dia_real = 12;
+
 tile_th = 3;
 post_dia = 8;
 
@@ -80,6 +82,8 @@ teststrapslots_at = [ [ 110, 70 ], [ 110, -35 ],
 teststrap = [ 3, 5 ];
 teststrap_peg = [7.5, 3.5];
 
+ply_edge_hole_dist_real = 14;
+
 // calculated
 
 TEST = false;
@@ -116,23 +120,40 @@ m4_define(`POST_TCROSSSZ',
 
 module Post(){
   mirror([0,0,1]) {
-    difference(){
-      cylinder(r= post_dia/2, h= tile_th + ply_th - post_shorter);
-      translate([0,0, tile_th]) {
-       cylinder(r= screw_big_dia/2, h= screw_big_len);
-       cylinder(r= screw_dia/2, h= ply_th, $fn=20);
+    if (!JIG) {
+      difference(){
+       cylinder(r= post_dia/2, h= tile_th + ply_th - post_shorter);
+       translate([0,0, tile_th]) {
+         cylinder(r= screw_big_dia/2, h= screw_big_len);
+         cylinder(r= screw_dia/2, h= ply_th, $fn=20);
+       }
       }
     }
-    if (TEST || JIG) {
+    if (TEST) {
       translate([0,0, tile_th/2]) {
        cube([post_dia,      POST_TCROSSSZ, tile_th], center=true);
        cube([POST_TCROSSSZ, post_dia,      tile_th], center=true);
       }
     }
+    if (JIG) {
+      translate([0,0, tile_th/2]) {
+       cube([POST_TCROSSSZ, POST_TCROSSSZ, tile_th], center=true);
+      }
+    }
   }
 }
 
 module PostHole(){
+  if (JIG) {
+    translate([0,0,-5])
+      cylinder(r= post_dia/2, h=10);
+    translate([0,0, -jig_min_th])
+      cylinder(r= ply_hole_dia_real/2, h = 5);
+    for (rot=[0:90:270]) rotate(rot) {
+       translate([ ply_edge_hole_dist_real, 0, -5 ])
+         cube([ jig_pencil_rad*2, jig_pencil_slotlen, 10 ], center=true);
+      }
+  }
 }
 
 module Posts(posts) {
@@ -176,7 +197,7 @@ module TileBase(botleft, topright){
       difference(){
        mirror([0,0,1]) {
          translate(concat(botleft + [test_edge,test_edge], [test_tile_th]))
-           cube(concat(size - [test_edge,test_edge]*2, [tile_th]));
+           cube(concat(size - [test_edge,test_edge]*2, [tile_th*2]));
          translate(concat(botleft_post, [-1]))
            cube(concat(topright_post-botleft_post, [tile_th+2]));
        }
@@ -617,7 +638,7 @@ module TestStrapPeg_Long(){ ////toplevel
 module Machine(){ ////toplevel
   Machine_NewArm();
   Machine_Curves();
-  if (TEST || JIG)
+  if (TEST)
     TestStrapSlots();
 }