# How do I move/sort points along a curve?

I’m not sure if I’m just being stupid, but is there a way for me to sort points unevenly along a curve?

What I mean is like using divide curve, but where the segments aren’t all equal, and where I can adjust the length of the segments.

What I’m trying to do is to draw an ellipse, and then to draw points on the ellipse itself. I would then like to adjust the points so that they are clustered on the long “sides” of the ellipse, and spread out at the pointy “sides”".

Here’s a crude drawing to indicate what I mean:

Any idea?

What I’m currently thinking is about whether there’s some way to identify the two points at either end of the ellipse (1/4 and 3/4 on Point On Curve) as “repellent” points, and then to have the rest of the points move away from both points, constrained to the ellipse curve itself, and adjustable by a factor. Phew, what a mouthful.

I already tried Move Away From, but I couldn’t properly constrain the resulting points to the ellipse, and I couldn’t set two emitters.

Essentially I’d like a graph or slider that I can push on, and see the points sliding around on the ellipse, but in such a way that they are always most sparse on the sides and most dense at the top and bottom (according to my drawing above).

This code applies ‘Graph Mapper’ to points on 1/4 of the curve, then mirrors and sorts them along the ellipse.

move_sort_points_2018Jan24a.gh (12.3 KB)

2 Likes

Better to replace sort ‘AlongCrv’ with ‘Crv CP’?

Oops! No, sort ‘AlongCrv’ is still needed to arrange the mirrored points in sequence:

move_sort_points_2018Jan24b.gh (17.7 KB)

2 Likes

Check this as well…

PointsOnEllipseRepelling_re.gh (12.5 KB)

2 Likes