This fillets are really annoying.would be nice to have a solution form the software without the need of manual workaround.
Not to be redundant but this is easily solved in parametric software.
This is a great example. Itās one of the biggest reasons Rhino fails imo. Rhino just doesnāt realize it can delete faces or move the edge or something lol ā or add coplanar faceā¦etc.
Iāll be relentlessly reflecting on this over time, and any others I can think of.
This is a great example too, one thatās been on my mind. Iāll share similar stuff in the future.
I played with this file a little bit, and Iām really surprised how bad Rhino is at the fullnose radius
wow ![]()
ā¦
I was messing with file tolerance and almost got it to work:
Yeah, I canāt get it to work. I had no idea it was this bad lol
Changing tolerances in the middle of modeling is a great way to cause problems with edges not matching and similar.
An absolute tolerance of 2.0 is an almost certain method of causing assorted problems, including with edges.
Iām thoroughly aware of that probability.
But when Rhino fails to fillet even the most simple task, I think it warrants a little adjustment to tolerance ā even if itās āin the middle of modelingā.
I also tried building the model from scratch after tolerance instances changes.
Iām thoroughly aware of that. Iāve been around the barbeque since 2004.
@davidcockey Why does Rhino fail to fillet the most simple task regardless of tolerance?
Notice how the changes to the tolerance almost got it to work? ā probably nothing tho right?
Thatās why I was changing it ![]()
I thought, āoh maybe itās having a hard time doing it āexactlyāā. And it almost worked I thought.
lol. Iām good. Iāll change it when I want. ![]()
Or can lead to some operations succeeding ā like joining edges to become āclosedā.
Tolerance is relative. If I get a file from a client and the model has errors under a tolerance of 0.0001", but it will close @ 0.0005", Iāll be changing the tolerance mid-build if I want to move forward with said relativity. ![]()
Probably true, unless the operation isnāt working cause there isnāt enough tolerance, then the user can decide to do so if they want. Thatās probably why the option is there.
I made a tool pallet specifically for doing so in V5, maybe I should share it with you ta ruffle some feathers ![]()
I should rename it āmid-build tolerance toggleā:
I literally made that pallet in like 2011 or so, for a client as per their request.
Theyāve been asking me to do it again recently ā theyāre not very good about managing their pallets.
So, itās been on my mind ā Iāll probably make a new version for V7 soon. ![]()
If Rhino fails to successfully fillet the most basic full-nose-radius geometry regardless of a dozen different tolerance combinations, then the problem isnāt the ātolerance changes mid buildā.
āToleranceā should be a āthresholdā that Rhino can use to deviate various transformations.
I was merely changing tolerance as an experiment to see if it was related.
Now I know, Rhino probably isnāt failing due to tolerance strictness. Itās failing due to something else. ![]()
here is another nice example, where _filletEdge fails
done manual with _filletSrfā¦
(and a few tricks to use _filletEdge for most of the stuffā¦)
clamp_2023.3dm (5.1 MB)
⦠it was the original Idea of this topic just to collect examplesā¦
Another nice example of filletEdge fails
I think thatās a good thing, but at some point these issues should be distilled down to the principle causalities that lead to these failures.
These examples seem to becoming redundant.
Iām pretty sure thereās a list somewhere that explicates whatās causing every single failure.
The developers probably have a list by now, Iād imagine. Right?
Probably one of the main reasons āfilletsrfā doesnāt fail when āfilletedgeā does, is due to lack of trimming requisites.
āfilletedgeā fails alot due to adjacent edges to the edges being filleted.
(You could probably split an edge, within a āfilletedgeā, with an adjacent edge, upto any successful āfilletedgeā, and that āfilletedgeā would fail.) ![]()
So, with that well-known causality, what code is missing in Rhino that would overcome said causality?
Maybe thereās a pattern throughout Rhino with other commands. This issue sounds similar:
@menno
even if there is already a lot of work aboveā¦
I will keep collecting:
Variable fillet on Polysurface
- my guess, this example also shows some weakness of the current algorithms:
with a tricky setup (left, splitAtTangent = No, mergeSrf) FilletEdge can do the variable fillet, with a standard polysurface (right) not:
fillet edge setting:
result:
fillet_fail_Stecker_00.3dm (3.6 MB)
Background ⦠Detail of this power-plug
kind regards -tom
Thanks. I have added this to the list of existing fillet edge issues.
Please understand that this will take time to fix, where hopefully we can do something for v9.
⦠take the time needed⦠great to know somebody is working on it.
donāt worry Rhino still like ya ![]()
Hope we get Rhino to fillet better someday. ![]()
That looks like a good thread, imma check it out. ![]()
fillet fails at Pole of _railrevolve
see this file / topic:
@menno
hope you have seen this topic - related to Surface Filleting across Tangent Faces
and @Gijs
would love to see above cases to be in the collection here as well:
looking forward to see those very welcome improvements - thanks - cheers - tom
Hi Tom , isnāt some of this is the way things are built as to why they donāt work? I donāt claim to know the right way, but have seen enough examples like singularities and three sided surfaces are not a good way for things to work.
There are always people here at the forum that bring Rhino a little further in development. Itās guys like you that are bringing it for sure.ā-Mark
would love to see above cases to be in the collection here as wel
what do you mean? That all samples from this thread get added to the file with samples that Jim provided?
in the collection
ok i thought the file in the video was your collection / your test file, did not get if from the context that it s jimās file. sorry for not following the topic with all infos..
kind regards - tom
Here is another case where the fillets failed.
Fillet fails in Plasticity, found a solution in Rhino.3dm (738.2 KB)
At the 1:18 minute of the video I had to use ! _FilletSrf, because the ! _FilletEdge failed to do a 40 mm fillet. The latter worked only on fillets with a radius of less than 35 mm, because the horizontal fillets made prior that step were also 35 mm. Most likely the variable conical fillet on the right side has caused some conflicts due to its radius being gradually smaller.
Also, at the 2:08 minute of the video even the ! _FilletSrf failed, so I was forced to use the trick with extending both ends and then manually move the end control points to the desired location via the ! _SetPt command.
Hopefully Rhino 9 will perform better in these two situations, so that the users could do the job faster instead of finding workarounds⦠![]()









