Tilting curve?

(Nathan 'jesterKing' Letwory) #1

I was wondering how one would tilt a curve in Rhino. Is this possible?

This video shows what I mean by tilting curves.


(David Cockey) #2


Many different types of objects can be used as the cage including curves; not only the box create by the Cage command.

(Marc Gibeault) #3

Hi Nathan,
I don’t see a curve being tilted in this video, but I think I know what you mean.
You could do something like that several different ways in Rhino, here are two:
-Create the box and then use the CageEdit command on it to deform it using the cage’s control points. If you use enough points while in the CageEdit (something like X=60, Y=6, Z=4) it will behave pretty much like in the video.
-With “Record History” on, create a curve with enough points and some cross-sections along it. With “Record History” still on, create the shape with Sweep1. You can then modify the curve and the cross section and the 3d shape will update.

(Pascal Golay) #4

It seems they are not tilting the curve so much as the relationship of the box to it. There must be a plane at each control that gets rotated around the curve and affects how the box shape relates to the curve. My 2 piasters worth…


(Brian James) #5

I’ll also add that if you use the CageEdit technique in Rhino, doing so on a mesh will be faster and more analogous to what you’re seeing in Blender with a modifier. The difference of working with a NURBS object as the captive in CageEdit is that it will get added isocurve density the more you tweak the control object. This is to preserve continuity across surface seams.


the video shows a few different things… what part, exactly, shows what you mean by tilting?

(Nathan 'jesterKing' Letwory) #7

I meant the several parts where I actually type the tilt command to use it. For example the tilting around control point of the underlying curve at 1m13s into the video it is most obvious.

I thought that adding the modified box over the curve would make it apparent what happens when the curve gets tilted on the selected control point (the ‘wobbling’ ), but perhaps it is obscuring what I meant.

So it is not so much the rotation of the control point as more the normal on the control point. Nor do I mean the moving of control points around as I do in the video to set up the model.

The first time I tilt the curve around a control point is at 43 seconds into the video. The fins on the 3d curve change according the tilt on the curve, note that the control points do not change position at all. Compare to 52s-55s where I actually rotate the control point (not tilting).

CageEdit isn’t what I’m after at, but

I have used this already, and gets close to what I do in the video here, but I still don’t know how to tilt the curve around a control point. (I use this technique in a RhinoCycles update video I posted earlier today on my YouTube channel).



oh… i watched it at the small size as seen in this thread… couldn’t read it :wink:

this might be a way to do what you’re after ? (edit- though i suppose this is basically the same thing marc is saying)

draw the bar straight…

turn history on then Flow the bar along the curve:

transform the original bar and the flowed one will update accordingly… in this example, using the Twist command.

(Pascal Golay) #9

Kickin’ the can down the road there Jeff! =)




(Marc Gibeault) #11

You can use the Gumball and position it over a curve’s point and manipulate points before and after this one.

(Nathan 'jesterKing' Letwory) #12

Translation works on a curve point, but rotation does not. Doing a rotate results in the error message “Unable to transform 1 object.” The gumball stays in the rotated orientation, but nothing happens on the curve itself.


(Marc Gibeault) #13

Yes, as I wrote, you can transform points before and/or after the point where the gumball is positioned. You can use RelocateGumball for that. I just tried it with a Sweep1 made with “RecordHistory” on and it works very well:

(Nathan 'jesterKing' Letwory) #14

While an interesting way to edit the curve this still isn’t the tilting I’m after. The location of the control points change, they shouldn’t. Only the curve normal at the control point location should be altered. It is like a banking corner, but without changing control point locations.

To, hopefully, clarify I’ve made another short screencast. This time only the nurbs curve is visible. Also its handles, direction and normal is visualised. When I tilt around the selected control point note how the control point doesn’t change location (nor any of the others). Instead the normal is modified, as can be seen from the “banking” of the direction fins.


(Pascal Golay) #15

Hi Nathan - - I do not think the curve is modified at all - this is an interface to some series of frames that are oriented on the curve, Sweep1 style, and these control the orientation of the fins- you can fake it with a Sweep1 with History

Tilty_PG.3dm (53.5 KB)

If you set Gumball to Align by Object and use it to rotate the red lines on their center points, I think you get about the same behavior…?

I think they are doing essentially this but hiding the process in the nice UI.


(Willem Derks) #16

Hi Nathan,

I think in Blender an attribute ( is added to) the controlpoints of a curve once it is used as a path.
Then the points can both be tilted and scaled to manipulate the resulting geometry.

In Rhino (afaik) there is no explicit orientation or scale attributed to controlpoints.

Yet looking at this type of manipulation @Pascal it might be something to consider adding to rhino curves.
I imagine that on top of the controlpoint an orientation around the tangent and a scale is added.
Those 2 parameters set the state of the frame on the curve.
It’s a completely new type of editing in Rhino, yet (without saying too much) it might be an extension of other new types of modeling being added…


(Nathan 'jesterKing' Letwory) #17

I investigated more as well, and found that indeed this normal orientation is an addition component on control points (under the hood called alfa, dutch for alpha).

Thinking more about this, perhaps getting a frame on a control point (which is already possible, use that to record the angle of rotation might be a way to go. This information can then be used to recalculate control point handles and whatever is in there.

The example by @pascal looks promising, but the frames are disconnected from the curve, which is something that would need to be solved.