Here is one of Parakeet’s example definitions, which I added a little bit to:Cymatics-ExtendSyrface-MapToSurface-MyRefinements.gh (32.1 KB)
It takes cymatics (aka Chladni patterns) that look like this:
And maps them to surfaces, like this:
My additions to the example definition are shown in three groups that I colored yellow. They work together to refine the Parakeet Cymatics component’s polyline output by culling short open polylines, smoothing the polyline output, transforming it into interpolated curves, and shortening open curves. (the shortening is me preparing to get good control over the next step, which is what I’m asking for help with: joining and closing open curves)
The output often produces open curves at the edges of the boundaries of the mapped UV cells, like this:
What I would like to be able to do is join endpoints of the mapped open curves, based on their proximity to each other, and if possible based on the curves’ direction in relation to each other (or the opposite, so I don’t get self intersecting results).
Also, how would I cull the open curves that are closest to the edge of the target surface?
Basically, my goal is to be able to choose to eliminate and/or close the open curves this definition produces.
What components and or sequences of components should I consider adding here?