chiark / gitweb /
sewing-table: wip Tile00
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Thu, 25 May 2017 00:28:33 +0000 (01:28 +0100)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Thu, 25 May 2017 00:28:33 +0000 (01:28 +0100)
sewing-table.scad.m4

index af5c5bf184b082f7317330b054230f9c62fd6235..37b46b6dafa2a6db10922af8ce04aab812ab2347 100644 (file)
@@ -97,6 +97,7 @@ reartablet_x = 5 + 1;
 reartablet_y = 5;
 
 frontcurve_side_skew = 3.5 / 72;
+frontcurve_avoid_y = 70;
 
 // calculated
 
@@ -639,12 +640,41 @@ module Tile10(){ ////toplevel
   RoundCornerAdd(rcs);
 }
 
+module Tile00(){ ////toplevel
+  sz = [250,170];
+  c0 = tile01_tr + [0,-sz[1]];
+  c = Rectangle_corners(c0, sz);
+  cnr_posts = Rectangle_corners2posts(c);
+  cty = cutout_tile01_y;
+  rcy = cty + frontcurve_avoid_y;
+  posts = [ cnr_posts[0],
+           cnr_posts[1],
+           cnr_posts[2] + [ 0,                             -rcy ],
+           cnr_posts[2] + [ -sz[1] + rearedge_len - cutout_l_end_x, -cty ],
+           cnr_posts[3] + [ 0,                             -cty ]
+           ];
+  rcs = [R_EDGE(c,1)];
+  difference(){
+    union(){
+      Rectangle_TileBase(c);
+      Posts(posts);
+      RoundEdge(R_EDGE(c,0));
+      RoundEdge(R_EDGE(c,1));
+      InterlockEdge(tile_01_00_cnr, c[0]);
+    }
+    RoundCornerCut(rcs);
+    Machine();
+  }
+  RoundCornerAdd(rcs);
+}
+
 module Demo(){ ////toplevel
   translate(demo_slop*[-2,1]) color("blue") Tile12();
   translate(demo_slop*[-2,0]) color("red")  Tile02();
   translate(demo_slop*[-2,1]) color("orange") Tile11();
   translate(demo_slop*[-2,0]) color("purple") Tile01();
   translate(demo_slop*[-3,1]) color("blue")   Tile10();
+  translate(demo_slop*[-3,0]) color("red")    Tile00();
   %Machine();
 }