algorithmic modeling for Rhino
Hi there,
Trying to sort curves.
So I have a group of straight lines that are arranged in a radial manner and I'd like to have them sorted so that one curve comes after its nearest curve to the right or left. So that say for example, if I interpolated the end point of each curve, I'd get a nice and simple elipse that doesn't bend all over the place as it tries to connect points that are completely out of order (which is seen on the first image, the green line). Does that make sense? Ideally the curves would be listed in a nice clockwise or counter clockwise order as seen in the second image.
One thing I tried was to sort them based on the distance of their end points to their Closest Point on a slightly spiraling curve...but it's hard to control precisely.
Any ideas?
Tags:
Hi Benjamin,
I had the same issue once. you can do it like this:
- draw a circle with the center in the center of you ellipse/rectangle passing through you lines (or near them doesn't matter)
- make sure, that start and end points of the circle are in the position where you want your first and last item in the sorted list of lines
-make sure that the defined direction of the circle is as you desire (direction of sorting)
-use closest point command between the lines and the circle.
now these intersection points have an assigned d-value on the circle
sort the lines due to the d-value (increasing or decreasing)
voila
cheers, Benjamin
Hey Benjamin,
Thanks for the reply.
I tried following your steps, but regarding the "closest point command", I don't believe I'm able to use it for various curves. In my version of grasshopper it seems I need to input two sets of points into the closest point command.
Am I perhaps not following you correctly?
Thanks again,
Benjamin
Hey, okay you already got it.
Stupid me, sorry my explanation was incomplete. you could use the start or end points of your lines to find the closest point of them on the circle (since the closest point on the circle always creates a line with the actual starting point that is perpendicular to the circles tangent in this point, the size of the circle doesn't even matter)
then sort the lines according to the d-value of these points.
but anyway..
see you
Benjamin
Welcome to
Grasshopper
Added by Parametric House 0 Comments 0 Likes
Added by Parametric House 0 Comments 0 Likes
Added by Parametric House 0 Comments 0 Likes
Added by Parametric House 0 Comments 0 Likes
© 2024 Created by Scott Davidson. Powered by