1
$\begingroup$

Is there a way to add a defined radius between two curves in geometry nodes? (The two curves are also defined in GN.)

enter image description here

Update: This is what happens when I use Bezier Segments with the proposed solution. The vertical curve is extended to infinity in -Z and the Radius is fallen apart. I tried to reverse one or the other curve but it doesn't help:

enter image description here

This is such an important function (for creating procedural designs from scratch) that it would be great if some developer could come up with a proper fillet solution.

$\endgroup$

1 Answer 1

1
$\begingroup$

As far as I know, as it stands you currently have to roundtrip convert to mesh and back to do that.

You have to convert the curve to mesh with a Curve to Mesh node, to be able to use a Merge by Distance so you can convert back to a bezier curve and fillet.

enter image description here

This shouldn't be much of a problem for straight segments only, but can cause loss of fidelity if you have curved splines.

Alternatively you can save a few steps by instead starting with a Mesh Line primitive instead, and just converting to curve afterwards.

$\endgroup$
10
  • $\begingroup$ Thanks for the suggestion. I hoped there is a way to remain in "curves territory" as the tangent is better defined as with meshes. Also I have more curves which needs to be connected with different radii so I have to see if I can do that with the converted meshes. Such a radius function between curves is so essential, I wonder why it is still missing from the GN toolbox. $\endgroup$
    – Steve
    Commented Jan 18 at 12:37
  • 1
    $\begingroup$ @Steve But the radius is done on a curve in this answer... the problem is just merging the two connecting points together - the Merge by Distance needs a mesh. But afterwards Duarte converts the mesh back to a curve and sets the radius. It's not that there is no such function for curves, the problem is your curves are not connected - a Join Geometry node does not merge the control points. $\endgroup$ Commented Jan 18 at 12:53
  • $\begingroup$ Oh, I see. Sorry and thanks. I'm coming from a NURBS workflow (Alias) where curves are treated separately. "Attaching" them would change their mathematical definition (introduce a multi-knot at the attachment position, which is not desirable in Alias). Converting the curve to a mesh an then back again is actually changing the curve especially if it's curved a lot. (I guess that was Dueart's comment.) I need to get my head around the way Blender is working with curves. $\endgroup$
    – Steve
    Commented Jan 18 at 13:15
  • $\begingroup$ I tested the above setup and it only works with lines. With my original setup (with two Bezier Segments) it creates some very strange and broken curves as a result. $\endgroup$
    – Steve
    Commented Jan 18 at 17:40
  • 1
    $\begingroup$ you can capture bezier data (handle positions), and restore it after converting back to curve $\endgroup$ Commented Jan 18 at 21:43

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .