[Feature proposal] Allow hole depth for countersinks
Forum rules
Be nice to others! Read the FreeCAD code of conduct!
Be nice to others! Read the FreeCAD code of conduct!
[Feature proposal] Allow hole depth for countersinks
Hi all,
this is my first post in this forum, so thanks to all for this great piece of software.
I proposed this as a PR here: https://github.com/FreeCAD/FreeCAD/pull/7562
and underestimated the thoughts that need to go into it - sorry for that. Nevertheless I think it might be a useful feature.
What I tried to achieve
I wanted to create a countersink hole with an added depth (basically combining countersink and counterbore). By googling I understood that this is a pretty untypical feature when doing metalwork. My usecase was actually 3d printing and it is also used in woodworking. Examples I found online are:
https://forums.autodesk.com/t5/inventor ... -p/5497777
https://www.pinterest.de/pin/counterbor ... 464948667/
I didn't see a technical reason why this shouldn't be done, so I implemented the functionality. To me the UI now feels a bit more intuitive, as depth and diameter are no longer interdependent.
Current (v20) Implementation
When doing a countersink hole the current implementation ignores the HoleDepth value when calculating geometry. But you can still modify the hole depth value in the UI using e.g. the spin box. This indirectly changes the HoleDiameter value in unexpected ways.
My Proposal
I added the ability to have both HoleDepth and HoleDiameter at the same time for the countersink hole. This also removes (from my perspective) the need for some magic, as switching between countersink and counterbore is straight forward. (One could argue that the depth value should be reset to 0 when switching from counterbore to countersink - that is easy to implement and I'd be happy to change that)
Issues
Due to the issue that HoleDepth can be specified for countersinks but is ignored in geometry generation, there might be documents out there that have a HoleDepth value != 0 on a countersink hole. This still needs to be handled somehow.
Please share your thoughts.
Best regards,
Stefan
Image of a countersink wit applied hole depth:
this is my first post in this forum, so thanks to all for this great piece of software.
I proposed this as a PR here: https://github.com/FreeCAD/FreeCAD/pull/7562
and underestimated the thoughts that need to go into it - sorry for that. Nevertheless I think it might be a useful feature.
What I tried to achieve
I wanted to create a countersink hole with an added depth (basically combining countersink and counterbore). By googling I understood that this is a pretty untypical feature when doing metalwork. My usecase was actually 3d printing and it is also used in woodworking. Examples I found online are:
https://forums.autodesk.com/t5/inventor ... -p/5497777
https://www.pinterest.de/pin/counterbor ... 464948667/
I didn't see a technical reason why this shouldn't be done, so I implemented the functionality. To me the UI now feels a bit more intuitive, as depth and diameter are no longer interdependent.
Current (v20) Implementation
When doing a countersink hole the current implementation ignores the HoleDepth value when calculating geometry. But you can still modify the hole depth value in the UI using e.g. the spin box. This indirectly changes the HoleDiameter value in unexpected ways.
My Proposal
I added the ability to have both HoleDepth and HoleDiameter at the same time for the countersink hole. This also removes (from my perspective) the need for some magic, as switching between countersink and counterbore is straight forward. (One could argue that the depth value should be reset to 0 when switching from counterbore to countersink - that is easy to implement and I'd be happy to change that)
Issues
Due to the issue that HoleDepth can be specified for countersinks but is ignored in geometry generation, there might be documents out there that have a HoleDepth value != 0 on a countersink hole. This still needs to be handled somehow.
Please share your thoughts.
Best regards,
Stefan
Image of a countersink wit applied hole depth:
- pathfinder
- Posts: 315
- Joined: Mon Oct 04, 2021 10:27 am
Re: [Feature proposal] Allow hole depth for countersinks
+1
This feature is also useful if you want to use countersink on a nonplanar or nonperpendicular surface.
This feature is also useful if you want to use countersink on a nonplanar or nonperpendicular surface.
Re: [Feature proposal] Allow hole depth for countersinks
The hole dialog is already heavily loaded. This gives rise to the question how often is this needed? If the hole is sketch based, then there are circles controlling it. Make them the diameter of the desired additional bore, adjust the z position and add a reversed pocket:
- Attachments
-
- counterboredCountersink.FCStd
- (13.9 KiB) Downloaded 28 times
A Sketcher Lecture with in-depth information is available in English, auf Deutsch, en français, en español.
- Shalmeneser
- Veteran
- Posts: 9591
- Joined: Wed Dec 23, 2020 12:04 am
- Location: Fr
Re: [Feature proposal] Allow hole depth for countersinks
We should need a sub-window for countersink / counterbore / iso
But if you want to drive by the depth of the sink, it's more technical.If the hole is sketch based, then there are circles controlling it. Make them the diameter of the desired additional bore, adjust the z position and add a reversed pocket
- Attachments
-
- counterboredCountersink_SinkDepth.FCStd
- (15.02 KiB) Downloaded 25 times
Re: [Feature proposal] Allow hole depth for countersinks
Many thanks for your feature!
However, as I also wrote in the PR, we must be careful because of:
1. the hole dialog is focused on fulfilling norms. It should help people to create holes so that they can give a part to a workshop and get the part manufactured and to create norm-conform technical drawings.
2. the hole dialog is the most complex dialog I know in FreeCAD already. Therefore we cannot argument "we just provide a feature, the user does not need to use it". This argument applies however for other dialogs.
The main issue is in my opinion 1.
I used the last week to speak with colleagues in our mechanical workshop and to see the countersink tools. They mostly mill plastic parts, and the norms don't divide between the materials. The idea is that people i the workshop look either at the technical drawing or the STEP file. The latter is nowadays the common method. They have software that inspects the STEP file and reads our that countersink is there and what tool has to be used.
I checked the norms I have access to and there your case does not appear. Moreover the countersink tool is always larger than the upper diameter of the countersink. You referenced a discussion in the AutoCAD forum and there in this post you see the standard tools:
https://forums.autodesk.com/t5/inventor ... rue#M27891
Therefore your example: cannot be manufactured using a countersink tool.
By 3D-printing you can of course do this and FreeCAD provides already a solution: Since FreeCAD 0.20 you can create pads and pockets with taper angles. Here is an example how your example created with this (just one of several possible methods): Since the Hole feature is designed for norms and since we have already a solution for 3D-printed parts, I vote against the feature addition. Also the linked AutoCAD forum discussion was stared in 2013 and till now It did not get support to be implemented.
Of course I am just one person with one opinion.
I hope that you are not upset and I hope that you stay with FreeCAD.
In general I recommend you to start a forum discussion if you want to add a major new feature. Many features are already there but at different locations or with different workflow than in other CAD programs.
However, as I also wrote in the PR, we must be careful because of:
1. the hole dialog is focused on fulfilling norms. It should help people to create holes so that they can give a part to a workshop and get the part manufactured and to create norm-conform technical drawings.
2. the hole dialog is the most complex dialog I know in FreeCAD already. Therefore we cannot argument "we just provide a feature, the user does not need to use it". This argument applies however for other dialogs.
The main issue is in my opinion 1.
I used the last week to speak with colleagues in our mechanical workshop and to see the countersink tools. They mostly mill plastic parts, and the norms don't divide between the materials. The idea is that people i the workshop look either at the technical drawing or the STEP file. The latter is nowadays the common method. They have software that inspects the STEP file and reads our that countersink is there and what tool has to be used.
I checked the norms I have access to and there your case does not appear. Moreover the countersink tool is always larger than the upper diameter of the countersink. You referenced a discussion in the AutoCAD forum and there in this post you see the standard tools:
https://forums.autodesk.com/t5/inventor ... rue#M27891
Therefore your example: cannot be manufactured using a countersink tool.
By 3D-printing you can of course do this and FreeCAD provides already a solution: Since FreeCAD 0.20 you can create pads and pockets with taper angles. Here is an example how your example created with this (just one of several possible methods): Since the Hole feature is designed for norms and since we have already a solution for 3D-printed parts, I vote against the feature addition. Also the linked AutoCAD forum discussion was stared in 2013 and till now It did not get support to be implemented.
Of course I am just one person with one opinion.
I hope that you are not upset and I hope that you stay with FreeCAD.
In general I recommend you to start a forum discussion if you want to add a major new feature. Many features are already there but at different locations or with different workflow than in other CAD programs.
Re: [Feature proposal] Allow hole depth for countersinks
Here is a link to a previous discussion, https://forum.freecadweb.org/viewtopic.php?f=8&t=34663. It seems that Eivind has already implemented something.
issue #5894
issue #5894
A Sketcher Lecture with in-depth information is available in English, auf Deutsch, en français, en español.
- adrianinsaval
- Veteran
- Posts: 5553
- Joined: Thu Apr 05, 2018 5:15 pm
Re: [Feature proposal] Allow hole depth for countersinks
AFAIK countersinks are used when you want the screw to be flush with the surface of when there's not enough material for a counterbore so I can't think of an actual usecase for combined counterbore and countersink, given that the hole dialog is already too loaded I also vote against this feature. For the rare cases where you might actually want to use it it's not hard to do with a pocket
Re: [Feature proposal] Allow hole depth for countersinks
Interestingly the Fasteners_ChamferHole tool creates a countersunk hole by subtracting a cone and a flat cylinder. This suggests that what the OP wants is perhaps not so very rare?
- ThanklessLiving
- Posts: 101
- Joined: Sat May 30, 2020 1:49 pm
Re: [Feature proposal] Allow hole depth for countersinks
I agree, if you are counterboring then you usually don't have a reason to use a countersunk fastener as well. However it doesn't mean that the countersink angle needs to match the angle of some arbitrary wood screw, it can also be a standard 118 degree drill that you can include in your design to show that the countersink can be done with just a drill bit.
Re: [Feature proposal] Allow hole depth for countersinks
I wouldn't say that you seldom need such a feature as we all work in different ways with different materials.It is far from unusual to set the head of a countersunk fastener a small amount below a surface.It is a sensible precaution in many instances because the range of tolerances on fasteners means that not all are absolutely identical and there is always the possibility of selecting a few from a bin in which different batches have been mixed.Which really means that you have to countersink to the worst case depth-plus a tiny bit.doing so with a simple countersink means larger countersink diameter follows or you use a countersink with a specified diameter and apply it to a depth that will accept the range of fasteners that one might encounter.
Where to put such a feature is a point for discussion.I admit to hardly ever using the hole feature as pocket seems convenient enough.If it exists,you don't have to use it and there are quite a few other features that I have never used and would struggle to identify and locate.My normal solution is to add the counterbore and then apply a bevel to the edge,but this causes a few issues if the full diameter of the counterbore is applied,so I stop the bevel a tiny amount less than the actual size.Perhaps one answer would be a macro that applies to all the holes in a particular sketch with depth,diameter and countersink angle as variables.
Where to put such a feature is a point for discussion.I admit to hardly ever using the hole feature as pocket seems convenient enough.If it exists,you don't have to use it and there are quite a few other features that I have never used and would struggle to identify and locate.My normal solution is to add the counterbore and then apply a bevel to the edge,but this causes a few issues if the full diameter of the counterbore is applied,so I stop the bevel a tiny amount less than the actual size.Perhaps one answer would be a macro that applies to all the holes in a particular sketch with depth,diameter and countersink angle as variables.