Commit graph

254 commits

Author SHA1 Message Date
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
dc4069b82d Add an affine_scale command 2024-10-04 01:28:15 -04:00
Arthur Moore
a0f7ad83bd Add an image explaining the variables for stacking lip 2024-10-04 01:28:15 -04:00
Arthur Moore
b4061d45d9 Caculate stacking lip support based on an angle
Removes the need for a magic constant.
2024-10-04 01:28:07 -04:00
Arthur Moore
09e8cf0de9
Merge pull request #214 from EmperorArthur/base_profile
Define the profile of the base by sweeping a polygon
2024-09-19 18:04: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
ea8a583507 Add additional validation to hole options. 2024-08-29 20:14:51 -04:00
Arthur Moore
7eb86296d9
Merge pull request #213 from EmperorArthur/fix_only_corners
Fix only corners
2024-08-29 19:53:27 -04:00
Arthur Moore
b8e14c1264 Fix only_corners not working correctly 2024-08-29 15:22:50 -04:00
Arthur Moore
563c94768c Fix openscad_runner not failing when a test should have failed 2024-08-29 00:48:42 -04:00
Arthur Moore
51f1198131
Merge pull request #181 from EmperorArthur/fix_vase_mode
Fix spiral vase mode
2024-08-09 00:54:55 -04:00
Arthur Moore
893e4f3f01
Merge pull request #187 from EmperorArthur/simplify_baseplate
Fix Baseplate Not Rendering & Generate Baseplate From Profile
2024-08-09 00:48:51 -04:00
Ruud
e21bd3ba16
Merge pull request #189 from Rocka84/customizer-decimals
allow decimals for some values in the customizer
2024-08-08 13:27:34 +02:00
Ruud
e9743fe422
Merge pull request #196 from dfredell/patch-1
Pyramid example base fix
2024-08-08 13:23:11 +02:00
Arthur Moore
3f2c6e28c5
Merge pull request #179 from EmperorArthur/update_holes
Add Multiple Options for Hole Configuration
2024-07-23 10:58:52 -04:00
Dan Fredell
3d6d4f3725
Pyramid example base fix
The base for the Pyramid scheme bin example created an invalid base because it wasn't a whole number.
2024-06-19 21:31:44 -05:00
Arthur Moore
3f10786861 Baseplate: Fix "Fit To Drawer" functionality.
No tests added yet.
2024-06-15 15:00:59 -04:00
Rocka84
f583a1c26d added note about special comments for customizer 2024-05-27 22:54:35 +02:00
Rocka84
9008d3bf9c allow decimals for some values in the customizer 2024-05-19 00:42:23 +02:00
Arthur Moore
8bfd05be8e Generate Baseplate from profile isntead of as a negative
Previous implementation was off by 0.5mm,
and required creating a gridfinity base.

This is much more flexible, and easier to understand.
2024-05-17 09:38:54 -04:00
Arthur Moore
54f0f4f935 Simplify rounded_square and make defaults match square
The default for square is center=false.
2024-05-17 09:38:47 -04:00
Arthur Moore
5a43731728 Make block_inset look similar to the previous version 2024-05-06 23:09:57 -04:00
Arthur Moore
7aebad420c Re-worked generic-helpers.rounded_square
* Now behaves more like rounded_rectangle, but creates 2d or 3d items.
* Deprecated rounded_rectangle.
* Added significant input checks to ensure values are valid.
2024-05-02 09:21:28 -04:00
Arthur Moore
388cb8dbab Fix baseplate not rendering
Simplified profile_skeleton() by using `offset` instead of `minovsky`.
This is much less computationally expensive, and easier to understand.
2024-05-02 09:21:28 -04:00
Arthur Moore
43b0b350a4 Use OpenSCAD Circle resolution to speed up ribbed cylinder creation 2024-05-02 09:20:22 -04:00
Arthur Moore
2245dd097c Fix gridfinity-rebuilt-lite
It now also supports all the hole options.

Note: Tests are not performed, due to the high rendering time.
2024-04-30 23:35:43 -04:00
Arthur Moore
e34a25d640 Baseplate - Add support for crush ribs and chamfering the magnet holes
* Updated tests
2024-04-30 08:11:29 -04:00
Arthur Moore
6f4e3b590e Add tests baseplate hole options 2024-04-30 07:54:52 -04:00
Arthur Moore
a4807fd3ab OpenScad Python Runner - Make camera_args a variable
As opposed to being a parameter of `create_image`.

Also made CameraArguments support fluent.
2024-04-30 07:43:09 -04:00
Arthur Moore
cd56b0e421 Make sure hole naming is consistent
Also fixes tests.
2024-04-30 07:38:47 -04: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
8346ce4dd3 Tweak chamfered magnet_hole to so the cone works witrh supportless
Difference was small enough the slicer mostly ignored it.
2024-04-30 01:08:05 -04:00
Arthur Moore
787fa30950 Split screw_hole into a separate function.
This can be re-used for the baseplate.
2024-04-30 01:06:40 -04:00
Arthur Moore
0e7c298154 Add tests for magenet holes in spiral-vase mode 2024-04-29 23:20:15 -04:00
Arthur Moore
01d759f406 Fix spiral vase bases
* Updated constant names to match previous changes.
2024-04-29 22:54:25 -04:00
Arthur Moore
35ee2065db Fix spiral vase mode
* Fixed assertion relating to walls.
* Switched to profile_wall instead of profile_wall_sub.
* Adjusted block_pinch offset so the stacking lip is properly printed.
2024-04-29 22:48:08 -04:00
Arthur Moore
bdc5a7e4d7 Added and update Images of all hole types
May want to consider auto-generating these
as part of the documentation build.
2024-04-28 02:05:50 -04:00
Arthur Moore
9b89773812 Add a test suite to generate images of bins with holes
Used to ensure all hole options work.
2024-04-28 02:05:50 -04:00
Arthur Moore
447df8621b Tweak defaults for Base Hole Options 2024-04-28 01:56:13 -04:00
Arthur Moore
73b10760f8 Update tests / helpers to allow adding more tests 2024-04-28 01:55:42 -04:00
Arthur Moore
0649f10802 Add Python tests for the hole cutouts to generate images.
* These are not (yet) triggered/run by the CI/CD system.
2024-04-27 00:31:19 -04:00
Arthur Moore
ca28aed898 Allow multiple levels for supportless holes
Helps prevent / minimize issues with filament droop.
Expecially when Cura decides to start the top of hole in mid-air.

Visible Changes:
* Supportless screw holes have a 3rd layer.
* Supportless magnet holes without screw holes have a 3rd layer.

Backend Changes:
* Switched to a completely different generation strategy.
  * Previous strategy directly produced negative.
  * New strategy is to make a positive,
    then use that to create a negative.
* Algorithm for multiple layers is not perfect,
  but works within tollerances set.
2024-04-27 00:18:18 -04:00
Arthur Moore
1a50807295 Make Screw Holes Printable 2024-04-24 21:22:56 -04:00
Arthur Moore
3e94c65cf2 Add images of all the hole options.
Does not include all combinations.
2024-04-24 21:19:16 -04:00
Arthur Moore
c47661af7f Add A 2nd Level For Supportless Hole Generation
Makes holes print better.

Use Affine Translation Matrices to be clear
how everything works without being too verbose.
2024-04-24 21:19:10 -04:00
Arthur Moore
32f91a77ca Support Chamfering Magnet Holes
Similar to ljbeal's Pull Request.
However, the implementation is completely different.

https://github.com/kennetek/gridfinity-rebuilt-openscad/pull/144
2024-04-21 23:34:23 -04:00
Arthur Moore
f222c262fc Allow using crush ribs for the magnet hole 2024-04-21 23:28:49 -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