a variable radius or chamfer?

 From:  Mike K4ICY (MAJIKMIKE)
4607.5 
Asanty,

For those intrigued by the notion:
Here is a mini-tutorial on how to get the result you want using manual methods.
I've seen this done in a few Rhino tutorials.

It's a "Manual Fillet" :-)


Sometimes effective use of the Fillet tool is impossible given complication such as uneven adjoining surfaces, sharp angles, broken edge curves, tiny surfaces in the way and etc.



To make a "manual fillet" do the following:

1) Select the desired edge curves and Join to make a separate path.
It can be closed or open. If open, extend the lines a little to clear the objects a little.



2)You need to make a swept shape along the path from profiles.
To do this, create circle profiles to represent the gap (or fillet size) that you want in each of the areas on the path.
3) Use the Orient command to position the profile circles, so that they'll be perpendicular on the path.



4) Sweep the profiles.
Note, when sweeping a profile along a path - if the path has too sharp a bend to accommodate the profile sweep without "kinking" - you must do separate surgery on the sweep object, by Boolean-differencing (or cutting out) the bad kinked corner and performing a Blend on the edges of the cut area to create a new bend for the sweep.



5) Boolean Difference the swept shape from the target surface object.
If all you need is a "Chamfer", congratulation - here you go.
But if you need a nice fillet....



6) Delete the leftover chamfer surface.



To maked blends between the surface edges to both parts of the target surface the curve segments need to be roughly oriented to each other... or in other words, the cuves need to match.
7) Trim the surface curves where needed with the Trim command to break them apart.
They'll still be attached to their surfaces.



8) Blend these surfaces...



Note how their edges are wavy. Most of the time these wavy edges will match up.
You must handle each intersecting path as the end of every blend section.
(At least until V3)



9) Many times you'll have edge curves that are broken into segments.
You must run the non-UI command "Merge" when the broken segments are selected.
This will not combine segments that are intersected by off paths.



10) Join all surfaces...



Look at that!
A nice and smooth variable-radius fillet that exists in even the most complicated target surface conditions.



A note to Michael: In my mind, I keep thinking that there may be some way to automate this, or for there to be a function that has the ability to blend the two paths set X-distance from a targeted edge or path on a surface. Then a souped-up Blend operation as shown above would negotiate the multiple broken segments an such, so that the desired result could be achieved - thus, the super-fillet.

However, I completely understand the daunting limitations of space and time, or the many complexities of programing with NURBS, this is way easier said than done. ;-)

EDITED: 13 Oct 2011 by MAJIKMIKE