From 388cb8dbab1b250aae549f22cb1d97f7aa0da732 Mon Sep 17 00:00:00 2001 From: Arthur Moore Date: Tue, 30 Apr 2024 23:48:34 -0400 Subject: [PATCH] Fix baseplate not rendering Simplified profile_skeleton() by using `offset` instead of `minovsky`. This is much less computationally expensive, and easier to understand. --- gridfinity-rebuilt-baseplate.scad | 27 ++++++++++++++++----------- 1 file changed, 16 insertions(+), 11 deletions(-) diff --git a/gridfinity-rebuilt-baseplate.scad b/gridfinity-rebuilt-baseplate.scad index 202dbcb..e9ce842 100644 --- a/gridfinity-rebuilt-baseplate.scad +++ b/gridfinity-rebuilt-baseplate.scad @@ -182,19 +182,24 @@ module cutter_counterbore(){ } } +/** + * @brief 2d Cutter to skeletonize the baseplate. + * @example difference(){ + * cube(large_number); + * linear_extrude(large_number+TOLLERANCE) + * profile_skeleton(); + * } + */ module profile_skeleton() { l = l_grid-2*r_c2-2*r_c1; - minkowski() { - difference() { - square([l-2*r_skel+2*d_clear,l-2*r_skel+2*d_clear], center = true); - pattern_circular(4) - translate([l_grid/2-d_hole_from_side,l_grid/2-d_hole_from_side,0]) - minkowski() { - square([l,l]); - circle(MAGNET_HOLE_RADIUS+r_skel+2); - } - } - circle(r_skel); + + offset(r_skel) + difference() { + square(l-2*r_skel+2*d_clear, center = true); + + hole_pattern() + offset(MAGNET_HOLE_RADIUS+r_skel+2) + square([l,l]); } }