I hope that you all have had a lovely Holiday so far!
I recently found myself looking for a helix tool in the PartDesign workbench to create some custom threads.
I could be wrong, but it seems like the standard way currently is to use the Helix feature in the Part WB, and import the result for further work in PartDesign. After trying it I found it a little tedius to switch to Part WB, and I also found that the model tree does not look so tidy afterwards.
I went looking in the forum and saw that others have requested a Helix tool in PD before (for example here: https://forum.freecadweb.org/viewtopic.php?f=8&t=32720).
The proposal
I have made a proposal implementation so that we can have something concrete to discuss.
https://github.com/FreeCAD/FreeCAD/pull/4209
I would love to discuss the details of it, how to extend it, and hopefully help integrating it into mainline FreeCAD when we are happy with it.
If you think it should not be part of FreeCAD it is also fine, I learned a lot implementing it.
The main idea is to have a simple way to sweep arbitrary sketch profiles along a helix in any direction. As I have implemented it, the workflow is similar to the revolution tool (and the groove tool).
To use it you start by making a sketch like below: Next click the icon: Next you select the axis of the helix (Options are the same as the revolve tool) and the other parameters: Same workflow for the subtractive helix: Your contributions with respect to how to improve the UI, better icons, cleaver features etc are very welcome and much of the point of this post.
What works
- Additive helixes in any direction from a sketch profile
- Subtractive helixes in any direction from a sketch profile
- Alternate input modes: pitch-turns and height-turns
- Up to next face and similar features
2020-12-31: Updated with latest development status
2020-01-01: Updated with improved icons, thanks to @bitacovir