Skip to content

Commit

Permalink
Merge pull request #223 from therealzanfar/feature/tab-placement
Browse files Browse the repository at this point in the history
Add feature to suppress tabs from certain divisions
  • Loading branch information
EmperorArthur authored Oct 13, 2024
2 parents 4536f90 + b497769 commit b4ff706
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 3 deletions.
4 changes: 3 additions & 1 deletion gridfinity-rebuilt-bins.scad
Original file line number Diff line number Diff line change
Expand Up @@ -73,6 +73,8 @@ enable_zsnap = false;
/* [Features] */
// the type of tabs
style_tab = 1; //[0:Full,1:Auto,2:Left,3:Center,4:Right,5:None]
// which divisions have tabs
place_tab = 0; // [0:Everywhere-Normal,1:Top-Left Division]
// how should the top lip act
style_lip = 0; //[0: Regular lip, 1:remove lip subtractively, 2: remove lip and retain height]
// scoop weight percentage. 0 disables scoop, 1 is regular scoop. Any real number will scale the scoop.
Expand Down Expand Up @@ -111,7 +113,7 @@ gridfinityInit(gridx, gridy, height(gridz, gridz_define, style_lip, enable_zsnap

if (divx > 0 && divy > 0) {

cutEqual(n_divx = divx, n_divy = divy, style_tab = style_tab, scoop_weight = scoop);
cutEqual(n_divx = divx, n_divy = divy, style_tab = style_tab, scoop_weight = scoop, place_tab = place_tab);

} else if (cdivx > 0 && cdivy > 0) {

Expand Down
14 changes: 12 additions & 2 deletions gridfinity-rebuilt-utility.scad
Original file line number Diff line number Diff line change
Expand Up @@ -72,10 +72,20 @@ function height (z,d=0,l=0,enable_zsnap=true) =
// set n_div values to 0 for a solid bin
// style_tab: tab style for all compartments. see cut()
// scoop_weight: scoop toggle for all compartments. see cut()
module cutEqual(n_divx=1, n_divy=1, style_tab=1, scoop_weight=1) {
// place_tab: tab suppression for all compartments. see "gridfinity-rebuilt-bins.scad"
module cutEqual(n_divx=1, n_divy=1, style_tab=1, scoop_weight=1, place_tab=1) {
for (i = [1:n_divx])
for (j = [1:n_divy])
cut((i-1)*$gxx/n_divx,(j-1)*$gyy/n_divy, $gxx/n_divx, $gyy/n_divy, style_tab, scoop_weight);
{
if (
place_tab == 1 && (i != 1 || j != n_divy) // Top-Left Division
) {
cut((i-1)*$gxx/n_divx,(j-1)*$gyy/n_divy, $gxx/n_divx, $gyy/n_divy, 5, scoop_weight);
}
else {
cut((i-1)*$gxx/n_divx,(j-1)*$gyy/n_divy, $gxx/n_divx, $gyy/n_divy, style_tab, scoop_weight);
}
}
}


Expand Down

0 comments on commit b4ff706

Please sign in to comment.