Gradient spacing re-interpolation

I have a series of points placed manually along a curve.

I want to be able to reduce the point count parametrically through grasshopper, and have the reduced number of points re-space themselves according to the original input point gradient spacing, something like this:

I've tried creating a polyline and rebuilding it, but the gradient articulation is lost. I feel like there's a way with remapping curve parameters, but I can't quite figure it out.

Thoughts?

  • up

    James Johanny

    Mark, 

    In terms of algorithm you could try this:

    1) Map your manually placed points to a set of evenly spaced points along the curve, so that you can map their parameters on the line. Let's call the set of evenly spaced points A, and your manually placed points B.

    2) Now, you can link each point in A to its brother (or sister) in B, and interpolate your own graphmapper as a polynomial curve.

    3) For any new set of points, evenly spaced along a line, you can compute new parameters based on the polynomial function previously computed.

    2