Compare commits

...

4 Commits

Author SHA1 Message Date
Arthur Moore a0b93a5bab
Merge 637b98577f into fd4db5aa9f 2024-03-11 03:34:43 +00:00
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;
union() {
@ -410,13 +412,13 @@ module stacking_lip_rounded_top() {
/**
* @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) {
assert(is_num(height_mm))
translate([1.4, 0, 0]){
translate([r_base - stacking_lip_depth, 0, 0]){
translate([0, height_mm, 0])
stacking_lip_rounded_top();
stacking_lip_chamfered();
translate([stacking_lip_depth-d_wall/2, 0, 0])
square([d_wall/2, height_mm]);
}

View File

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