Adding a variable offset to a line

Let’s say I want to offset a curve but have the cap be larger on one end than the other. Or, have the stroke thickness change at different control points. Is there a way to do this?

Was thinking maybe a plugin or grasshopper. I’ve sketched out what I’m trying to do below.

Best,
Paul

What a coincidence; I encountered something today where I was wondering the same thing. Any big brains know of an old script or trick to do something like this?

The trick is to extrude the original curve into a surface, use VariableOffsetSrf to offset it with your different values, then dupe the edge of the offset. There are a couple of other workarounds as well. This is also scriptable, someone has probably already done it…

2 Likes

_pipe cap=round


_extractIsoCrv
//or
_intersect

combined with IP (infinity plane)

be careful with extrating the curves (offsetSrf is more safe …) proper snap and check with _boundingBox
or force by _projectToCPlane

2 Likes

Both options worked well! The pipe and extract isocurve was a little faster, but VariableOffsetSrf seems more widely useful. Thanks so much for the quick replies