Changing curve starting point and getting a different curve shape

Struggling with this. Why???

RelocateCurveEnds_funnybehavior.gh (38.1 KB)

I can understand that the RelocateCurveEnds (Pufferfish component) put just the starting point in the instructed position, then for the following points aimed directly at the previous, ex 2nd (and all the following) point(s) in the position they was before the RelCrvEnds comp.
When the group 3 (containg the RelCrvEnds comp.) is connected to the orginal curve all seems to proceed well, except that when it reaches the position where the previous end point was, the sequence ends and short-cut abruptly to the new starting pooint (and the remanders of the curve were thus discarded).
Almost the same if group 3 is connected to group 2: mission aborted at the old ending point.

But - again - why this?

Is this related to some nasty point order in the original curve? To some misinterpretation of a single component? To my processor?
I’m specially able to create strange things lately…

BTW: I’m interested in understanding the logic of this (badly) returned curve, not just to have this particular curve set & combed (I have other curves to set like this, and then tween them…)

Just to complete the picture here:
I was trying to set a closed curve in order to have the starting and ending points perfectly set in the Y axis. I choose RelocateCurveEnds for this 'cause I’m not confident using Seam.
But didn’t exepcted it would be such a pain…
I’m stuck and run out of ideas.
Any help?

I’m pretty confident using Seam :smiley: and I think you could make it work very well in combination with Extremes component

RelocateCurveEnds_with_Seam_Extremes.gh (27.9 KB)

Pufferfish’ relocate curve ends works very well with polylines (I have used it a lot in the past, but for Polylines only, and it never failed) but I don’t know exactly what’s going on under its hood… looks to me like it’s first finding the curve closest point to the new start point, then it’s deleting any control point that had a parameter lower than the clost point parameter but the last one, which gets replaced by the new one, but mine is just a guess

1 Like

Hello Inno
Thank you for your contribution and your example for the right Seam setting.
My way was to spit the curve in half, then joining the two open segments and rebuilding the closed curve in order to have the starting point at the desired location. This way Seam starting point is a the zero ‘t’ parameter and coincident with the curve starting point…

And, as per the RelocateCurveEnds logic I’m continually forging new possible explanations but still it’s difficult to know what happens in the engine of this pufferfish component :slight_smile: