X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=sewing-table.scad.m4;h=09bfc586825e33e0a33a89319cc12c455effbd2b;hb=07c68a4c66a005a45cc21f4da2bd6ebefdab2f05;hp=8ca8ff17bc26b4a2f7342092f0841d15798f7d4b;hpb=ee16e07412f22f0fd68ad19ce46c429466454888;p=reprap-play.git diff --git a/sewing-table.scad.m4 b/sewing-table.scad.m4 index 8ca8ff1..09bfc58 100644 --- a/sewing-table.scad.m4 +++ b/sewing-table.scad.m4 @@ -30,6 +30,20 @@ interlock_fine_lenslop = 1.0; demo_slop = 0.1; +leg_height = 50; + +leg_hole_dia = 5 + 0.75; +leg_big_dia = 37; +leg_bot_dia = 15; +leg_top_flat_z = 5; + +leg_fin_top_w = 5; +leg_fin_bot_w = 5; +leg_fin_bot_rad = 30; +leg_fin_bot_flat_z = 5; + +leg_n_fins = 4; + // cutout machine_rear_to_front = 84 + 0.25 - 1.4; @@ -115,6 +129,9 @@ interlock_negative_rad = interlock_rad + 0.125; interlock_sq_adj = 0.2; // arbitrary +leg_fin_top_rad = sqrt( pow(leg_big_dia/2,2) - + pow(leg_fin_top_w/2,2) ); + m4_define(`POST_TCROSSSZ', `2*( tile_hard_edge_hole_dist - test_edge + 1 )') @@ -667,6 +684,34 @@ module MachineEnvelope(){ } } +module Leg(){ ////toplevel + difference(){ + union(){ + hull(){ + mirror([0,0,1]) + cylinder(r= leg_big_dia/2, height=leg_top_flat_z, $fn=100); + translate([0,0, -leg_height]) + cylinder(r= leg_bot_dia/2, height=1, $fn=100); + } + for (rot=[0: 360/leg_n_fins : 359]) rotate(rot) { + hull(){ + mirror([0,0,1]) translate([0, -leg_fin_top_w/2, 0]) + cube([ leg_fin_top_rad - 0.1, + leg_fin_top_w, + 1 ]) + ; + translate([0, -leg_fin_bot_w/2, -leg_height]) + cube([ leg_fin_bot_rad, + leg_fin_bot_w, + leg_fin_bot_flat_z ]); + } + } + } + mirror([0,0,1]) translate([0,0,-1]) + cylinder(r= leg_hole_dia/2, h=leg_height+2, $fn=30); + } +} + function Rectangle_corners(c0, sz) = // returns the corners of a rectangle from c0 to c0+sz // if sz is positive, the corners are anticlockwise starting with c0