2
$\begingroup$

I have a Curve object that has a complex shape and is very curved. The vertices are all lined up one after another. Is there a way I can force those vertices into a straight line with an arbitrary distance between them?

Ideally, this could be perhaps saved as a Shape Key or similar so I can animate between the original curve and the straight version. Maybe there's also a way to do this using GeoNodes?

$\endgroup$
1
  • $\begingroup$ yes shapekeys are a solution, have you tried? $\endgroup$
    – moonboots
    Nov 15, 2023 at 19:59

2 Answers 2

5
$\begingroup$

You can create a curve line, move the endpoints to position it (set position node with endpoint selection node plugged into the selection socket), resample it (resample curve) using the same number of points as your other curve, and then all you have to do is transfer the point positions between the two (sample index in vector mode with position plugged into the vector socket) and use the output in a set position node.

$\endgroup$
3
  • $\begingroup$ Sometimes an one image is more than a thousands words ... :) $\endgroup$
    – vklidu
    Nov 16, 2023 at 8:42
  • $\begingroup$ @vklidu I think you meant to say: sometimes A picture is worth a thousand words.. But interestingly The phrase has been spoofed by computer scientist John McCarthy, to make the opposite point: "As the Chinese say, 1001 words is worth more than a picture." $\endgroup$ Nov 17, 2023 at 0:54
  • 1
    $\begingroup$ @HarryMcKenzie Yes I do :) I don't think it is a place to go deeper here, but I'm definetelly from visual generation :) $\endgroup$
    – vklidu
    Nov 17, 2023 at 16:48
3
$\begingroup$

enter image description here enter image description here

Sorry I just couldn't get the result from Hadriscus's answer ... so here is what worked for me. For Blender 3.4+ use Sample Index node (instead of my Transfer Attribute).

To animate transition (morph) change Factor of Mix node (0-1).

$\endgroup$

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .