Sweep on Nurbs Curve

Hi everyone,

I’m trying to generate a solid along a NurbsCurve as explained in this Video by Firas Noori:

However I have two problems to execute this task:

  1. I cannot seem to create a polygon from the circle, it just generates a line (see image)
    This problem also occurred when just trying to generate a rectangle in any plane.
  2. I cannot create the sweep because of a self-intersection warning
    image

I have also uploaded my whole dynamo file here. I would be very glad for any help with this problem! Thank you all very much already.

Cheers, Vera
Random_Splines_inVolume.dyn (546.6 KB)

Your profile is not perpendicular to the path.
And it should be.
You can take a point and the normal at that point on the path to build a profile on a plane perpendicular to the path

I will try to implement that right away. Thanks for your fast response!

Hi Viktor,

I have tried again. I think with the method that I used, it should automatically generate a plane that is perpendicular to the Nurbs-Curve at that point. If you play around with the Parameter, at which the plane is generated (i.e. if you change it from 0 to 0.01 or 0.5, you can see that the plane looks more like its perpendicular to the curve).

So maybe the problem is somewhere else? Or I just didn’t quite understand everything yet…

Thanks anyways for your response!

Ok, but then why are you rotating it afterwards?

Not sure if that;s the problem but it seems unnecessary

Yes, the rotation is to turn the polygone in plane. But because that polygone doesn’t work yet, turning the circle in plane is quite unnecessary but shouldn’t cause any trouble. I will try to remove that node and try again without that rotation.

1 Like

it also doesn’t work without that rotation…

So it is probably the path. Is it still the same error or something else?

Yes, it’s still the same error, it still says “Unable to make wire from edge body : IG_CURVE_BS3_COI_VERTS – Curve or its approximation have coincident control points”

thanks for your continued help!

would you mind sharing the graph or showing the path. Or have you tried it on a different path?

Here is an image of how I created the NurbsCurve. I basically created points along the sides of a rectangular volume (you can see the points in the background). And the goal is to be able to change the weights of these points and thereby change the shape of the curve.

you can also have a look at the script itself, it might be easier to understand all connections and the python code:
Random_Splines_inVolume.dyn (550.6 KB)

I can’t use the graph since it;s getting some information from the project you’re working on.
But what I can see is that you have some very high value for the degree of the curve. The curve itself seem to have some jagged edges which Dynamo doesn’t like for sweeps.

Try going back a few steps, and wiring the polygon into the sweep like this:

If that doesn’t work, try reducing the number of sample points used to create the path. Take every third and see if that works, somewhere along the sweep you are folding the shape over itself. That will hopefully illustrate where. Taking the plane at multiple parameters can also help identify this.

If all of that fails, pack the points into a Data.Remember node, or write the X,Y, and Z values into an external file (ie: excel) and we can go from there.

I have tried to decrease the amount of degrees but that didn’t solve the problem, sadly :confused:

Hi Jacob,

thanks a lot for your answer, I will have a look at it in more detail and try to implement it. I will get back to you asap.

Also, sadly, the polygone doesn’t work. It just gives me a line instead of a polygone, that’s why I didn’t connect it to the surface.bysweep

Can you quickly disable all the other geometry display (select all nodes, right click the background, disable preview) other than the circle and polygon, and grab a quick screenshot of those two data previews and the associated geometry.

Hi Jacob,

thanks for your investment and sorry for the late reply. Here is the image you asked for (I hope its what you mean…, otherwise pleas don’t hesitate to ask again):

image

Also I tried to make a lot of planes after eachother and here’s how it looks like, it doesn’t look like its folding over itself to me…


And here’s the code I used to generate all the planes after eachother:

Thanks for your help!

You can try using solid.byloft or surface.byloft once you have these profiles.