Linear control point but non-linear parameters

Given a nurbs curve with control point with a spacing that is increasingly getting larger towards one side, its parameters should also follow this increase in a linear (constant) way. However on the file attached and shown below, the parameters seem to expand towards point 0, contract and then expand again. How is this possible and can it be fixed?

(This was based on this amazing post by David Rutten: https://ieatbugsforbreakfast.wordpress.com/2013/09/27/curve-parameter-space/)

problem.gh (7.9 KB)

Never trust parameter space for expected distances, parameter space in based on complex NURBS vector calcs which usually have special conditions on the ends. You can use Pufferfish’s Tween Though Points on Curve component which will give you the result you are looking for.


TweenOnCrv.gh (10.7 KB)

Thanks a lot Michael. Nice tool! I am very curious on why Rhino does that…Do you think the start and end point allocate a different ‘weight’ somehow? Yet on the output it gives a similar weight for all points. There is this Knot output but I have no idea how to visualise that.

Very interestingly a degree 1 curve is actually much less stretchy at its end so that kind of solve the issue:

Ah yes because degree one curves param space are vectors directly from control point to control point. You can see that in the description of point at for polylines

Gets the point on the polyline at the given parameter. The integer part of the parameter indicates the index of the segment.