I want to split curve by "control points". I also want to remind, that original's curves points is "Control Points" You can see it in this node group:
1 Answer
To solve this task you would have to proceed as follows:
Here I first capture the index of each point with Capture Attribute
.
Then I convert the curve into a poly curve, which of course removes the Curve Handles.
But this way I can convert the curve into a mesh, which can be split exactly at the original points with Split Edges
.
This mesh is transformed back into a curve.
Then you have to convert it to a Bezier Curve again and define the type of the Curve Handles.
Thus you have several curve segments, which were divided at the original points.
So that the curve segments also receive the original form again, you simply transfer the positions of the handles from the original curve to the points of the new segments.
-
$\begingroup$ Yeah, this is pretty smart! But can it be solve using "selection" socket in the "split edges" node? Maybe we can transfer some attribute with "Transfer Attribute" node with "near" function.. just for learning $\endgroup$– BicukowCommented Aug 6, 2022 at 15:38
-
1$\begingroup$ @AlexanderBicukow
Split Edges
only works with a mesh. But to get the mesh, you have to applyCurve to Mesh
before. But this will also resample the curve, which will also give you the extra points. So this is not an option, unfortunately, which is why I also do a multiple conversion here. $\endgroup$– quellenform ♦Commented Aug 6, 2022 at 15:49