Compare commits

...

3 commits

Author SHA1 Message Date
Arthur Moore 637b98577f Match radius of bin to radius of base.
Fixes #169, and #165.
2024-03-10 23:34:30 -04:00
Arthur Moore 5b25e2e114 Replace "1.4" constant in profile_wall() with calculated value 2024-03-10 23:28:47 -04:00
Arthur Moore 69cb64e98d Rename chamfered profile to stacking_lip_chamfered() 2024-03-10 23:23:09 -04:00
2 changed files with 12 additions and 7 deletions

View file

@ -385,9 +385,11 @@ module stacking_lip() {
} }
/** /**
* @brief Stacking lip with a rounded top. * @brief Stacking lip with a with a chamfered (rounded) top.
* @details Based on https://gridfinity.xyz/specification/
* Also includes a support base.
*/ */
module stacking_lip_rounded_top() { module stacking_lip_chamfered() {
radius_center_y = h_lip - r_f1; radius_center_y = h_lip - r_f1;
union() { union() {
@ -410,13 +412,13 @@ module stacking_lip_rounded_top() {
/** /**
* @brief External wall profile, with a stacking lip. * @brief External wall profile, with a stacking lip.
* @details The "1.4" constant is to match old behavior. * @details Translated so a 90 degree rotation produces the expected outside radius.
*/ */
module profile_wall(height_mm) { module profile_wall(height_mm) {
assert(is_num(height_mm)) assert(is_num(height_mm))
translate([1.4, 0, 0]){ translate([r_base - stacking_lip_depth, 0, 0]){
translate([0, height_mm, 0]) translate([0, height_mm, 0])
stacking_lip_rounded_top(); stacking_lip_chamfered();
translate([stacking_lip_depth-d_wall/2, 0, 0]) translate([stacking_lip_depth-d_wall/2, 0, 0])
square([d_wall/2, height_mm]); square([d_wall/2, height_mm]);
} }

View file

@ -1,8 +1,6 @@
// height of the base // height of the base
h_base = 5; h_base = 5;
// outside rounded radius of bin
r_base = 4;
// lower base chamfer "radius" // lower base chamfer "radius"
r_c1 = 0.8; r_c1 = 0.8;
// upper base chamfer "radius" // upper base chamfer "radius"
@ -18,6 +16,11 @@ r_fo3 = 1.6 / 2;
// length of a grid unit // length of a grid unit
l_grid = 42; l_grid = 42;
// Outside rounded radius of bin
// Per spec, matches radius of upper base section.
r_base = r_fo1;
// screw hole radius // screw hole radius
r_hole1 = 1.5; r_hole1 = 1.5;
// magnet hole radius // magnet hole radius