Offset different distances on each edge of a planar curve

Hey guys,

My question is really simple. i have checked previous questions on the forum but I couldn’t find anything as simple as this.

The below image explains my question.

By default the GH offsets the curve on all sides with an equal distance. Is there a way to do this unequally on each side.

Thanks!

Try this.

variable offset-2.gh (7.3 KB)

1 Like

What am I doing wrong?

Post your file and internalize the data. (RMB on Curve > Internalize Data)

Here it is

variable offset-2.1.gh (9.0 KB)

Your file is working for me. What version of Rhino are you using? I’m using 7. If you’re using an earlier version, I suggest try recreating my def using those components instead.

I recently re-wrote some of the internals to a Variable Offset cluster:

I am on Rhino7 too. Anyways you were right. Remaking it worked.

That’s strange. I’d be curious to hear if anyone else downloaded and tried this.

Thank you very much! will check it out! very useful.

Yeah. Thanks for the solution though!

The Variable Offset cluster:


offset_variable_2021_Aug23a.gh (11.2 KB)

1 Like

Hi. The curves I am working on aren’t exactly on the XY Plane but kind of complicated. I have attached the GH file. There is some weird offset going on here when I used your method and the one posted above by Ethan.

GZP-V1_210824.gh (39.8 KB)

Hi. The curves I am working on aren’t exactly on the XY Plane but kind of complicated. I have attached the GH file. There is some weird offset going on here when I used your method and the one posted above by Joseph Oster.

GZP-V1_210824.gh (39.8 KB)

Well my goodness, who could have ever, ever, ever predicted that???

Since all your curves seem to still be planar but not the xy plane, the goal is to find the plane they lie in and then use the offset relative to that plane. I did it for the first curve. Hopefully, if this works for you, it can be adapted to the remainder.

GZP-V1_210824-b.gh (38.9 KB)

Haha sorry about that. Thanks for the help! Will try this out.