In my scenario, I have a horizonal edge loop with equally spaced vertices along it. I am seeking a way to shift the vertices around the loop path where they maintain their spacing.
In this cube example, I manually moved each vertex to achieve the effect I am looking for:
This resulting cube maintains the original vertex spacing but has been shifted over by an increment or two, retaining its cubic form:
My goal is to maintain the original shape but skew the vertical edge loop paths to create interesting patterns on the surface of my mesh.
I have tried using the “Simple Deform” modifier to twist my mesh but since I’m not working with a circular shape it doesn’t produced the desired result. I’m currently exploring geometry node operations in hopes of finding a more straightforward solution. Any advice or suggestions would be greatly appreciated.
You’ll need to be in Edge Mode during Edit Mode by pressing 2 on the top row keys - not the NUMPAD 2. Once there, you’ll select the edges, not the vertices, you want to slide, and activate the Edge Slide option from the Edge > Edge Slide Menu.
Give it a shot and let us know if that does what you’re trying to do!
I gave the Edge Loop operation a shot but unfortunately it doesn’t perform the action I’m aiming for. The vertices seem to slide along their vertical edges but I am aiming to move them along the horizontal edge they all share.
One potential solution I have found since posting that would produce a similar result is to use “bridge edge loops” and increment the twist value so the vertical edges pair with an above vertex that may be clockwise/counter-clockwise to it rather than directly above
Why do you not just turn on the Move Gizmo in the Gizmo overlay dropdown?
Then you select and drag along the Axes of choice.
Beyond that, you can add a custom Transformation Orientation by selecting a face (not edge or vertex) and adding the new option.
Necessary for when the mesh is not nicely aligned to the XYZ Axes…
Vertex slide is screen-space, it takes the position of your mouse pointer relative to the active vertex and uses that direction vector to slide every vertex. In your case you want a different direction for each vertex so it won’t work.
One way could be using simulation nodes, by checking each vertex neighbours, pick the one that’s on the same height as the current one, and match positions. But that’s a bit convoluted.