I have a manually created rope mesh that has a Bezier curve modifier. Currently, I can control it by selecting the Bezier knots in Edit mode and dragging them. enter image description here

However, I want to be able to manipulate the rope from an arbitrary starting configuration to a goal configuration, by reassigning the rope mesh vertex coordinates in the starting configuration to their coordinates in the goal configuration. This entails moving the mesh vertices of the rope rather than the Bezier knot coordinates, and having the Bezier curve reinterpolate to fit the new rope. How can I accomplish this?

I can access the vertices of the rope like so: verts = list(bpy.data.objects['Rope'].data.vertices)

but changing any vertex coordinate like verts[i].co.z += k in the Blender Scripting shell does not visually change the rope.

Or, is there another modifier that would allow me to deform the rope (without warping it) by using the mesh vertices directly, instead of the curve modifier?


  • $\begingroup$ you should reassign all the verts[i].co by verts[i].co = Vector( (something) ) $\endgroup$ – lemon Jul 17 '19 at 7:08
  • $\begingroup$ The co.z above was just an example, even reassigning it to a new vector does not visually change the rope. $\endgroup$ – blender_guest Jul 17 '19 at 7:15
  • $\begingroup$ do it in object mode. And I was wrong: in object mode, co.z += something works. $\endgroup$ – lemon Jul 17 '19 at 7:16
  • $\begingroup$ ok yup I can change the coordinates in object mode but it looks very distorted since I can pull a vertex far away from the mesh, and it becomes like a protruding point. instead, I want the rope to pull along with the vertex, like in proportional editing but with the rope pulled along instead of getting warped. any suggestions? $\endgroup$ – blender_guest Jul 17 '19 at 7:40
  • $\begingroup$ Well, if you want to manipulate vertices directly, this is a lot of calculations... and will impact many things (UV maps, for instance). So, no, no simple suggestion here.Can Leander's answer help you? See here blender.stackexchange.com/questions/8808/… $\endgroup$ – lemon Jul 17 '19 at 7:45

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.