Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement choice between different screw insert brands #114

Open
wants to merge 10 commits into
base: refaktor
Choose a base branch
from

Conversation

mbugert
Copy link

@mbugert mbugert commented May 18, 2022

This builds on top of #110 and implements #113.

Screenshot:
dropdown

Regarding backwards compatibility: when loading a JSON file produced by an older version of the generator, screw inserts will always be turned off. That's not optimal, but I think people will definitely notice missing screw inserts before printing.

mbugert added 10 commits May 12, 2022 21:43
There were two functions screw-insert-holes and screw-insert-screw-holes
whose difference was unclear. screw-insert-screw-holes creates the holes
for the bottom plate only, so it was renamed to
screw-insert-holes-plate.
Responsibility for creating and positioning shapes of screw insert
holes was scattered across multiple methods which made it hard to
maintain. In particular, dimensions of the screw insert shape had to
be passed to the `screw-insert` and `screw-placement` functions which
do not need this information, as they mostly do positioning work.
Screw insert shapes are now created directly in `screw-insert-hole`
and others. `screw-insert` is renamed to `screw-placement-common` to
better reflect the changes.
Bottom plate generation in manuform.clj relied on several hacky 3D
operations (micro-translations before projection operations and
extruded screw hole shapes). This is replaced with 2D operations
followed by a single linear_extrude. This commit also fixes the
non-aligning bottom plate mentioned in ibnuda#112.
After these changes, the dome part of a screw insert shape never
overlaps with the cylinder even for wild parameter choices.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant