From 57b224a30889e7865df348fdda30eae9fa75372a Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Sun, 20 Apr 2025 18:47:13 +0100 Subject: [PATCH] toolbox-inserts: wip Signed-off-by: Ian Jackson --- toolbox-inserts.scad | 30 ++++++++++++++++++++++++++---- 1 file changed, 26 insertions(+), 4 deletions(-) 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); + } + }*/ + } } } -- 2.30.2