Change from GH6 to GH7 in polyline curve domains - is there a workaround?

In GH 6, after joining single curves into a polyline, CrvDom changes the domain such that each polyline segment is represented by an integer, ie. segment 1 = 0-1, segment 2 = 1-2, segment 3 = 2-3, etc.

In GH7, all else being equal, CrvDom changes the domain to be 0-length of polyline.

I relied on the GH 6 method to determine which polyline segment a point fell on. Does anyone know a workaround to get the same result as in GH 6? Thanks!

Using the RhinoCommon API method Rhino.Geometry.Curve.JoinCurves(IEnumerable<Curve>) produces the same differing results you have shown above on V6 vs V7 (must have been an API change).

This isn’t very difficult to do with standard components or a few lines of code. (15.9 KB)

This works on V6 or V7.


We try to have parameterization match the length of a curve. If you find situations where this isn’t the case, let us know.

– Dale