Hi @siemen Joinedges is designed to specifically force edges that are out of tolerance together - and should ONLY be used if Join doesn’t work and you are willing to live with the potential downstream trouble it might cause. So since its nature is to force edges together, it always reports the needed tolerance reduction to the user. Always use join if things are within tolerance.
Join doesn’t work. Or well, it works but not for my purpose. I’m trying to have control over how my surfaces will be unrolled. Join would connect every edge it can find together with another edge. With JoinEdge I control which edge gets connected and how the shape will be unrolled.
Image showing difference between unrolling using join and using joinedge. Red edges are naked edges as they haven’t been joined
Regardless of what the tool was designed for, I believe that if the tolerance to join the sufaces together is smaller than the document tolerance, it should use whatever code “Join” uses in the back to join only those 2 surfaces together and not give me a pop-up warning. If the tolerance is bigger, then sure give me a pop-up window to warn me about it.
First, for your cube example above, don’t forget JoinEdge’s companion command UnjoinEdge. So instead of exploding your cube and then successively re-joining edges, you can just unjoin certain edges, then unroll.
As far as the dialog, well, I agree and disagree at the same time. I understand that for the use you are making of it - where you want to join individual edges that you know are good and within tolerance without having to globally join stuff - having the dialog pop up is annoying.
On the other hand, when it does pop up under other circumstances, and the deviation is less than the file tolerance, that indicates to me that something is wrong and one needs to check why it didn’t join normally. It might be a bug, or there might be something wrong with one or more of the edges. Forcing them to join may not be the best thing to do. It can also make objects invalid - so having CheckNewObjects active is extremely important when using JoinEdge.
WAIT - I’m being stupid (again)…
@siemen - I have a simple solution to your problem - it didn’t even occur to me to check until after I posted - there is a -dash version of -JoinEdge that bypasses the dialog.
! _-JoinEdge _Pause _Yes
The above will join any two edges without any dialog coming up… Use at your own risk of course.
Can you give an example where it would be an issue to join pieces outside of file tolerance? I’m not seeing the problem with removing a dialog that says things will move 0,0000000000000088… mm if the file tolerance is set to 0.001 mm. And I don’t see why using the code that is used for regular Join cannot be used in those cases.
Thanks for the workaround and UnjoinEdge command. Didn’t know about the latter.
I don’t have an example on hand, but often it comes from selecting a bunch of surface/polysurfaces and calling Join and the resulting object still having naked internal edges. Going in and checking, they are sometimes within tolerance down to an extremely small number - but the question is why then didn’t Join join them in that case?
And often when the naked edges are part of a polysurface and all the other surrounding edges are joined, using JoinEdge to join the last two that didn’t join will cause the object to go invalid.