From: Ian Jackson Date: Sun, 20 Apr 2025 17:47:13 +0000 (+0100) Subject: toolbox-inserts: wip X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=commitdiff_plain;h=57b224a30889e7865df348fdda30eae9fa75372a;p=reprap-play.git toolbox-inserts: wip Signed-off-by: Ian Jackson --- diff --git a/toolbox-inserts.scad b/toolbox-inserts.scad index 5941377..ca21b81 100644 --- a/toolbox-inserts.scad +++ b/toolbox-inserts.scad @@ -12,6 +12,10 @@ driver_handle_handle_d = 21.6 + 0.75; $fs = 1; $fa = 3; +// calculated + +wall_top_inner_bevel_ratio = 0.25; + module DriverHandlePositive() { ////toplevel linextr_x_yz(0, driver_handle_total_l) circle(r = driver_handle_shaft_d/2); @@ -19,6 +23,10 @@ module DriverHandlePositive() { ////toplevel circle(r = driver_handle_handle_d/2); } +module WallMinkowskiSphere(wall=well_surround_wall) { ////toplevel + sphere($fn=8, r=wall/2); +} + module WellSurround(half_height, wall=well_surround_wall) { // WellSurround(half_height) { // SomethingPositive(); @@ -29,15 +37,29 @@ module WellSurround(half_height, wall=well_surround_wall) { // IOW its z==0 must be where the top of the wall is, // and half_height is the depth of the well below that. - difference(){ + render() difference(){ union(){ - linextr(0, half_height) - projection(cut=false) children(0); + minkowski(){ + linextr(0, half_height - wall/2) + projection(cut=false) children(0); + + WallMinkowskiSphere(wall); + + } } - translate([0, 0, half_height]) + translate([0, 0, half_height]) { children(0); + + /* hull(){ + for (zi=[-1,0]) { + linextr(zi * wall * 0.25, 2) + offset($fn=4, r = (zi+1) * wall * 0.25) + projection(cut=true) children(0); + } + }*/ + } } }