Can anyone help me fillet these edges? Or explain why they wont fillet?

flameedge.3dm(507.3 KB) Hello,

I have tried every way that I know to fillet these edges… nothing works. I am sure it is because of all of the twists and bends, but even if I have to manually fix some of the areas I would be fine with that… but I can’t get any size to work. Any and all help would be greatly appreciated!

1 Like

flameedge.3dm(507.3 KB)

I extracted the curve from the surface, rebuild it, then made a solid and filet it with radius 0.05.

flameedge.3dm(1.9 MB)

Thanks for the very quick response, if I may ask, what were your parameters when you rebuilt the curve? I attempted exactly what you did and always got the message “Failure in building rails or surfaces”. I am just not understanding what I am doing wrong?

If You run Rebuild command on the curve You can see the parameters. Also I deleted some control points - in the straight segment of the curve. It is a really trial and error - every case is different and You need to play.

Hi zildjian- keep in mind that corners/bends on the edge to be filleted nut have a radius larger than the fillet radius- in this case the edge has some very small radii- .01 or so, and this severely limits the size of the fillets tan can be added, at least at those locations. It is a complex edge, so there may be more to it still, like edge segments that are not quite tangent, but that is what I see so far.


If you don’t need geometrically exact fillets (which is usually the case at ornamental parts as yours), I can propose you 2 approaches:

The first one is the taper method which is pretty fast but has also one limitation:

  • Create a planar surface from your curve (PlanarSrf)
  • Taper that surface at 45° and the distance = the fillet radius (I chose 1). Use the option Solid=No
  • The angled surfaces build the basic shape of the fillet. We now have to turn their straight profile into a quarter circle
  • Explode the surfaces and change their U degree from 1 to 2 (ChangeDegree). This ads an additional point row in the middle of the surfaces.
  • Imagine the profile of the surfaces as the diagonal of a square. If we move the middle control points to the outer vertex of that square, we will get the desired quarter curve.
  • To do so select all middle control points and call MoveUVN.
  • Type in the scale field the value 0.707107 (which is the half of the square diagonal multiplied by the fillet radius) and drag the N slider to the right.
  • Et violà, the surfaces all turn into fillets. You can even set the weight of the middle control points (Weight) to the value 0.707107 to get exact quarter circle profiles.

This method handles well corners caused by areas where the curve radius is smaller than the fillet. But only as long as the curve stays convex within. If the curve has concave parts (as yours at the thin bottom end) self intersections may appear. The second method can handle these cases at the fee of some manual work:

  • Extrude the base curve by the size of the fillet (ExtrudeCrv).
  • Turn on control points on the created surface.
  • Select the upper row of points.
  • Call MoveUVN and type in the scale field the size of the fillet (1).
  • Move the N slider to the left. The upper edge now forms an offset curve with the same point structure as the base curve.
  • The curve will have self intersections where the curve radius is smaller than the fillet. These have to be disentangled manually (the highlighting of the control polygon helps to indentify to which side a point belongs).

To build the fillet from the base curve and the offset curve you have two choices:

  • Use these curves as rails for Sweep2. You need also a quarter circle as profile curve. The option Simple Sweep is strongly recommended.
  • Copy and move the base curve again as in the first step.
  • Loft these 3 curves with Loose option. Unfortunately Rhino doubles the point rows along the fillet for some reason. (WISH: Loft should have the option Simple Loft, similar to the Sweep commands, if the point structure of the input curves is identical).

flameedge.3dm (1.3 MB)