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)