I’m aware that the target polyline used as a reference for the “Untrim” command is not perfectly following the ball shape of the original untrimmed surface, but in my opinion ugly results like this should not happen, considering that the former is constructed by two straight lines that end in a sharp corner.
Hi @pascal ! As I mentioned above, I’m aware that the lines don’t lay on the surface to be untrimmed. However, so far in my modeling practice with Rhino “Untrim” with the “Select curve” mode has always performed nicely, even tough in most cases the curves were a bit off.
My expectation in this particular case is that Rhino should not produce that weird shape inside the very end of its bottom edge. Instead, it must try to untrim with a sharp edge, just like the target curve suggests.
In this case the curves are not just off the surface, they extend past it. I would prefer the tool fail here, with a messaage, rather than make a mess. My guess, and I’ll ask, is that it may be hard to get the trims to stop cleanly where they run off the underlying edge if the full curve cannot be used.
I agree, having a warning message could at least help to be cautious for the result. Still, I think that trimming the surface diagonally that way is very improper from a design and modeling perspective, because the target curve is not shaped that way. Note that “Mode=ExtendSideEdges” also don’t work, so this is clearly a bug which is not related to the target curve, because in this case Rhino will not use the curve at all.
Here is what’s happening when I bump the accuracy of the Absolute tolerance 10 times (from 0,001 mm to 0,0001 mm). The selected surface was untrimmed with 0,0001 mm tolerance, while the other surface was untrimmed with 0,001 mm tolerance.
Bumping the precision even more to 0,000001 mm results into this diagonally trimmed edge. The distance between the corner of the target curve and the split edge (the dot) of the surface is 0,0104255 millimeters.
I’m confused - the underlying surface stops at the ‘diagonal’. The selected curve extends out into space past the underlying surface. That should just fail, imho, if it cannot use the selected curve ‘partially’.
Here is a close-up of the same area compared to the untrimmed version of the same surface. In my opinion, the “Untrim” tool should try to untrim that area up to the very edge of the untrimmed copy leaving just the tiny portion marked by the extended curves as a diagonal edge.
Note that the “Mode=ExtendSideEdges” option is incapable to extend the surface until it meets the edge of the untrimmed version of the same surface.
Also, when using “Mode=Select curve” and the blue polyline is used as a target curve, the untrimmed surface’s edge goes beyond the border of the original untrimmed surface, which should never happen. ! _RebuildEdges with 0,0001 mm strict tolerance makes the bug even worse.
The problem that I see is that the untrimmed surface does not go out to the curve you are using to replace the edge. That should fail rather than make a messy edge. At any rate that is the bugtrack item I will file. Extending the side edges is similar - it fails because the edges would extend off past the underlying surface before meeting. The bug here is that the curve selection version does not fail as the side extension does.
In my opinion, Rhino should be able to untrim the diagonal edge from the image in your post up until where it meets the natural border of the surface marked with the red arrow, leaving a tiny diagonal edge.