Convert a curve into a regular wavy

Having drawn a curving line on a surface, how can I convert it into a regular wavy line , with control over the pitch of the wave and the distance between wave ‘tops’ ?



You could start drawing a spiral around the curve and pull that to the surface. Not tested but I think that should work.

1 Like

not sure how I draw a spiral along a curve, will have to look that procedure up, then I have to flatten it I presume.
Had hoped rhino had commands to wriggle a line etc, rather than have to try and construct it, being an organic type of prog versus solidworks.

ditto weld areas, having to manually construct them with sweeps and wavy lines, taken hours, a command would have been a godsend. as such I have given up on wavy effect, its got smooth welds !


inside the Helix command you have the “AroundCurve” option. then just project it to the target surface:

Steve, you’ve been around for so long, I am surprised you’ve never come across the spiral around curve. FYI it’s in the first part of rhino level 1 training.
If it’s too much work to pull a curve to a surface then make a macro or script or use gh. Rhino is offering you a plethora of options to streamline your work.

1 Like

If you get obvious ‘peaks’ in the projected curve and want something smoother, then it’s worth trying this with an extra step:
Make the helix around a straight line and flatten (e.g. with setpt). Then flow the flattened curve along the surface line and project it to the surface.

Blue is working directly with surface curve, red is using extra step.
This isn’t going to work on every surface, but may sometimes be worth a shot.


1 Like

I need to get the wavy line waving in and out on a line normal to the fillet surface.
see rhino file attached for fillets wavy lines etc. pic is of result with unwanted wavy top.

is this best way to do so…

used the helix along curve thanks.
weld making idea
FilletSrf 5mm
cut ends off that go out beyond the upright
DupEdge of fillet surface, these are the top and bottom rails.

Now to get a midline ‘E’ 1mm out from surface, I chose offsetSrf, then extractIsocurve and obtained it that way.
(considering all sorts of shaped weld lines that might be needed to make, any other ideas on that welcome !)
Now to make that line a regular wavy line the plane of which is normal to the surface.
What is the easiest way of getting a wave, a surface through which would be perp to the fillet surface ?

I decided to draw a line and sweep2 curve using base of vertical structure ‘F’ and line ‘E’. to get a surface (green)
Create the helix around the curve ‘E’ option radius .1mm and pitch 2
Project command and project the resulting helix to the green surface.
Now to sweep the profile ‘D’ along ‘A’ ‘B’ and ‘C’, wishing for my sweep3rail again.
used Sweep2rail but whilst base and middle are as required the top is rippled.

So what method to get the edge ‘A’ also without a ripple ?
I have tried adding a profile to the far end of the rails, then loft and it just timers up, and stays timer, a surface has appeared but the file has frozen, mental overload !

TestFillet make weld idea.3dm (1.0 MB)

If you loft A, projected C, and B together you get this:

Almost instantaneous, no hang-ups, using R5.

You might want to create a spiral with less control points though.

1 Like


playing about with helix settings, two welds created curving inwards, same can be done with the profile curving outwards for the sweep before extracting Isocurve.
reduced points per twist to 4.
have dragged the helix3 across to compare to helix 2.
If there is an easier way of turning the extracted isocurve in the middle into a regular wave who’s plane is per to fillet surface I would be interested to know.

With this the fillet setting decides the width of the weld, the pitch for the helix around curve the distance fore/aft of the ripples, and the radius of the helix how pronounced they are.
Just choosing top then middle then bottom rails and hitting enter gives me the curving aspect like the leading edge of lava flows. settings as shown.

Now is that repeatable or a fluke I wonder :slight_smile:

Loft normally involves selecting all lines.


This actually looks more than decent as a representation of a weld.
I am just worried that the resulting surfaces are very cv-heavy .
If you have a lot of welds in one file it might bog down Performance quite a bit.
Not to speak of memory requirement (and possible GPU limitations) for rendering.
I think the displacement method suggested in your other thread is much more practical.

1 Like

now I understand why you need 12 hours of work each day :smiley:

A simple bump map / displacement should be more than enough for things you don’t manufacture from imo.