X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=sewing-table.scad.m4;h=950f69c731d1aba9ca97461d1665a7af67659265;hb=9c3bb91f9adde083a93efe6268885255aa440dad;hp=3e8802716a0de686dd298dcb4f77269db1a7557b;hpb=9a3b5c665447c8435e4e1a74c728bfa42d5057ba;p=reprap-play.git diff --git a/sewing-table.scad.m4 b/sewing-table.scad.m4 index 3e88027..950f69c 100644 --- a/sewing-table.scad.m4 +++ b/sewing-table.scad.m4 @@ -489,6 +489,21 @@ module Machine_NewRearProfile(){ } } +module Machine_NewFrontProfile(){ + // figures copied out of xfig edit boxes + // best not to edit the posbox size if poss - just move it + posbox = 10 * ([11.8022,8.0600] - [4.2044,19.1867]); // box, Green + refline = 10 * ([7.6778,16.7222] - [27.8689,17.6578]); // line, Blue + refline_mm = (11-1)*10; + sh = -[abs(posbox[0]), abs(posbox[1])]; + rot = atan2(-refline[0], refline[1]); + sc = refline_mm / vectorlen2d(refline); + //echo("SH",sh,rot,sc); + mirror([1,0]) scale(sc) rotate(rot+90) translate(sh){ + import("sewing-table-front-profile.dxf", convexity=10); // spline, Pink3 + } +} + module Machine_NewRearCurve(){ slant = atan2(4,210-10); //echo("SL",slant); @@ -554,18 +569,15 @@ module Machine_Curves(){ ////toplevel translate([ tile01_tr[0] - cutout_l_end_x + rearedge_len, cutout_tile11_y, frontcurve_z_slop ]){ - translate([ 0, -first_front[0] , 0 ]) + translate([0, -machine_rear_to_front, 0]) multmatrix([[1, -frontcurve_side_skew, 0, 0], [0, 1, 0, 0], [0, 0, 1, 0], [0, 0, 0, 1]]) - translate([ 0, first_front[0] , 0 ]) - mirror([1,0,0]){ - rotate([0,-90,0])rotate([0,0,-90]){ - linear_extrude(height= 200) - Machine_FrontProfile(); - } - } + mirror([1,0,0]) rotate([0,-90,0])rotate([0,0,-90]) + linear_extrude(height= 200) + Machine_NewFrontProfile(); + translate([ rearcurve_strt_len, 0, rearcurve_z_slop ]){ @@ -780,6 +792,7 @@ module Tile00(){ ////toplevel cnr_posts[3] + [ 0, -cty ] ]; rcs = R_CNR(c,1); + rc2 = [c1bis,c2bis,c[1]]; difference(){ union(){ difference(){ @@ -798,9 +811,10 @@ module Tile00(){ ////toplevel RoundEdge(c1bis, c2bis); } Machine(); + RoundCornerCut(rc2); } RoundCornerAdd(rcs); - RoundCornerAdd([c1bis,c2bis,c[1]]); + RoundCornerAdd(rc2); } module FitTest_FrontCurve(){ ////toplevel @@ -848,6 +862,7 @@ module Demo(){ ////toplevel //Machine_Profile(); //Machine_NewRearProfile(); //Machine_NewRearCurve(); +//Machine_NewFrontProfile(); //Machine_Curves(); //Machine(); //FitTest();