RibbonOffset's "Side to offset" pick point's affect on result

Below shows how the point picked for _RibbonOffset’s Side to offset affects the output curve. The result with overlaps occur when the point is picked too close (such as at A) to the starting curve.

image image

RibbonOffset_DistanceOfSidePickFromCrv.3dm (47.5 KB)

1 Like

If you use the rebuild option does it improve?

Fwiw I recommend using the rebuild option always.

@spb thanks. @chuck and I were just discussing this one. The pick point is used to determine a region during a curve boolean operation. There’s a chance the pick point might be in a spot where it generates a bad region and causes this. We feel it’s something that we can improve and have opened a YT for this.

https://mcneel.myjetbrains.com/youtrack/issue/RH-57718

The overlaps disappear only with a small enough control point count, so it ends up being a trade-off with accuracy.

Believe it or not, if you reverse the curve it should work correctly. And that makes perfect sense to me. I’ll make it smarter ASAP.

1 Like

RH-57718 is fixed in the latest WIP

tested it yesterday and it is indeed fixed in my testing models-

I don’t know if the previous WIP was doing it, but overlaps are now created when the point to specify an inside offset is not far enough away from the curve:

image

Will open curves eventually be valid input for _RibbonOffset? If not, maybe the offset side can be set with a check box in the dialog box.

The inner offset is harder to figure out. I’m working on it. It needs some way to decide which region to keep. It currently uses the location of the direction finding point. It can be solved by looking at the direction of the region boundaries in most typical, but there are other complications.

In order to get this to work on open curves, we’ll have to find a way to resolve the self-intersections without calling the CurveBoolean code. It’s certainly possible, but not a priority at this point. @Trav If we’re going to do this right, we’ll have to consider the possibility that the offset of a single curve inward could result in more than one curve.

RH-57840 is fixed in the latest WIP