Commit graph

69 commits

Author SHA1 Message Date
Arthur Moore
4536f90824
Merge pull request #183 from jpypi/fix-cylinder-cuts
Fix cylinder depth, chamfer, and function formatting
2024-10-13 15:40:42 -04:00
Andrew Guy
25b988dbb7
Add Gridfinity Refined thumbscrew option (#226) 2024-10-07 23:52:13 -04:00
Arthur Moore
c34de9bff0 Switch stacking lip constants to the same format as baseplate constants
This increases readability and usability, while also being more compact.

Also updated documentation in gridfinity-rebuilt-bins to explain how heights are calculated.
2024-10-04 01:28:15 -04:00
Arthur Moore
d40a3decc9 Define the profile of the base by sweeping a polygon.
This is the same approach taken for the stacking lip and baseplate.
2024-08-29 20:14:51 -04:00
Arthur Moore
b8e14c1264 Fix only_corners not working correctly 2024-08-29 15:22:50 -04:00
James Jenkins
0b80167413 Fix cylinder depth; fix chamfer; formatting
- Cylinder depth now consistent across all axes
- Chamfer disabled in non-z axes, since that's nonsensical and wasn't
  working anyway
- Cleaned up formatting around math symbols for readability
2024-05-03 03:31:23 -05:00
Arthur Moore
95219c6cb9 Fix Baseplate
Hole changes were not tested against it.
Many oppertunities for improvements here.
2024-04-30 01:46:37 -04:00
Arthur Moore
8fa885ac72 Allow mixing and matching hole options 2024-04-21 23:21:21 -04:00
Arthur Moore
2e0e9bd363 Simplify Hole Creation
Everything now goes through block_base_hole(...)
Noting in gridfinity-rebuilt-utility knows or cares what sytle_hole contains.
2024-04-21 23:07:21 -04:00
Arthur Moore
a4200a04bd Simplify refined_hole() 2024-04-21 23:07:08 -04:00
Arthur Moore
67ba594585 Made some hole constants more readable 2024-04-21 22:08:54 -04:00
Arthur Moore
88ad9dbf6c Moved hole functions to a separate file 2024-04-21 22:03:21 -04:00
Ruud
36345f3efb
Merge pull request #175 from EmperorArthur/affine_hell
Use Affine Transformation Matrices For sweep_rounded
2024-04-18 20:15:49 +02:00
Ruud
fc51ba875e
Merge pull request #173 from coderjo/main
Don't add holes if style_hole is 0 even if only_corners is set
2024-04-18 20:10:17 +02:00
Arthur Moore
574d9dc6b1 Move helper functions / modules to their own file
These are not explicitly tied to Gridfinity.
2024-03-11 19:36:48 -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
Arthur Moore
1cf350121d Use Affine transformation matrices for creating walls.
This involves more math, but results in a cleaner abstract syntax tree.
Which also means it is cleaner when importing to something like FreeCAD.
2024-03-09 23:29:03 -05:00
Tracy Ward
d9d92db544 Don't add holes if style_hole is 0 even if only_corners is set 2024-03-04 22:13:17 -05:00
Arthur Moore
015daff2e8 Update Stacking Lip Profile
Profile is now based on https://gridfinity.xyz/specification/
This does not change the final profile, merely how it is created.

Fixes #168 - Cura watertight issue.
Paritally fixes #169 - FreeCad errors.
2024-02-24 03:57:06 -05:00
Arthur Moore
fd4db5aa9f Add more brief function descriptions 2024-02-24 09:18:49 +01:00
Arthur Moore
6b6b385cda Made height calculations more readable.
There are significantly more lines, but the code is now more understandable.
2024-02-24 09:18:49 +01:00
Priit Laes
5df82679c8 Fix r_fo1 radius to 7.5/2 and fix usage in code
Also introduce d_fo1 = 2 * r_fo1 in places where diameter seems
to be used.
2024-02-16 22:40:01 +01:00
Priit Laes
b4abd1d474 Use proper radius value for r_fo2 2024-02-16 22:40:01 +01:00
Priit Laes
9b364e410c Use proper radius value for r_fo3
The same value used in baseplate is now handled as radius (instead of
diameter).
2024-02-16 22:40:01 +01:00
Asger1002
2f2567d7a9 Removed whitespace in attempt to pass merge test
Pre-merge test showed a failure in removing 'trailing whitespace'. Some whitespaces removed in an attempt to pass this.
2024-02-16 16:15:06 +01:00
Asger1002
1bc283cf59 code cleanup + added comments
- Added comments describing CutEqualBins functionality
- Fixed a single line of missing code as described in a github comment
2024-02-16 16:15:06 +01:00
Asger1002
db06f2914b Added ability to customize tab sizes. Added function for cutting multiple bins.
Additions:
- ability to change height of tab, i.e. stickout, for thinner/thicker labels. Specified in mm.

- ability to change width of tab, for longer/shorter tabs that don't span the full bin width. Specified in mm.

- 'CuEqualBins' function for cutting multiple equally-sized bins given:
* amount of bins (in x and y directions)
* length (in x and y directions, specified in gridfinity-bases),
* starting position (lower left of first bin, in gridfinity bases)
2024-02-16 16:15:06 +01:00
James Jenkins
e31742e37d Make style_hole=4 compatible with only_corners 2024-02-16 12:47:26 +01:00
Timothy Stranex
d6eb8402e9 Add chamfers to cylindrical cutout holes 2024-02-15 10:25:20 +01:00
Stephen Kent
faff922757 Add style_lip as argument to gridfinityInit
When used as a library, `grifinity-rebuilt-utility.scad` accepts all the
bin properties to use as arguments to `gridfinityInit`, `cut`, or other
methods, with the sole exception of `style_lip` which must be defined in
the calling file.

This change adds `style_lip` as an argument to `gridfinityInit` to
ensure `gridfinity-rebuilt-utility.scad` can be used as a library.
2024-01-29 09:58:53 +01:00
Stephen Kent
944dd39c81 Fix whitespace errors using pre-commit 2024-01-06 08:37:37 -08:00
Ruud
3a485537da
Merge branch 'main' into pre-commit 2024-01-06 13:18:55 +01:00
Stephen Kent
86cab75c50 Merge remote-tracking branch 'origin/main' into pre-commit
Conflicts:
	gridfinity-rebuilt-utility.scad
2023-12-24 15:23:05 -08:00
Jannes
6202c73b21 move cylindrical cutouts to utility 2023-11-21 21:41:08 +01:00
Ruud
c95938da94
Merge pull request #129 from banpower1:banpower1/gridfinity-refined-holes
Gridfinity Refined magnet holes
2023-11-11 20:39:13 +01:00
banpower1
b50c07a0fb Added refined_hole function into block_base allowing to select option 4 - Refined holes 2023-09-26 22:54:02 +02:00
Stephen Kent
046ed3067c Add whitespace fixes generated by pre-commit 2023-09-21 23:11:23 -07:00
Stephen Kent
19e2a5996b Skip tab fillet cutter if tabs are disabled 2023-09-21 22:16:28 -07:00
rpedde
4ae0a87793 Fix "unknown variable length" error
The "only corners" option didn't get the message about the move of
length to l_grid in 99100b66
2023-06-08 12:01:29 -05:00
Ruud Swinkels
1622fcbc1d Merge remote-tracking branch 'upstream/main' into hotfix/holes_at_corners 2023-05-31 19:01:00 +02:00
Ruud Swinkels
de00ffde5f renamed constant file to standard.scad 2023-05-31 17:48:39 +02:00
Ruud Swinkels
6168fdf322 Merge remote-tracking branch 'upstream/main' into fix/static_hole_location 2023-05-31 17:46:41 +02:00
Ruud Swinkels
99100b6600 move length to constants file 2023-05-31 17:46:30 +02:00
Ruud Swinkels
66c64945fd remove square with zero height call 2023-05-27 15:03:15 +02:00
Ruud Swinkels
3b90df14f5 fix dynamic hole location on grid length 2023-04-26 19:05:37 +02:00
Joe Rogers
70b6e00e7e
Fix ghosted hole cutout rendering 2023-04-22 23:01:14 -04:00
Ruud Swinkels
1b9f71b4b5 fix holes only on corners 2023-03-20 18:48:28 +01:00
Ruud Swinkels
0538b37c3d improve performance 2023-02-21 22:31:48 +01:00
K Hodson
b95548fe6d Option to only put holes at corners of bin 2023-02-17 10:23:59 -07:00