I'm trying to find a way to collapse only the 'width' edges on a strip of faces, leaving only edges that run along the center of each strip. This needs to work for multiple strips (mesh islands) as part of the same mesh. Underneath is diagram of what I'm aiming for

for context I have another GN setup that uses these strips as input, but I would also like to extract the center edge for a separate use

Some things I've thought of but can't manage to execute-

-using Corners of face and offset corner in face into vertex of corner to get the width of each face then trying to move the verts inward half the width

-subdividing the mesh and using shortest edge paths/paths to curves to find a path from start to end down the middle (wouldn't be ideal as adds extra verts but usable)

thanks for reading!

enter image description here

edit: trying to come at it from a different angle, if I split the individual faces and place points on the edges, anywhere where there are 2 points on top of each other would be where a vert needs to go, or for the ends any edge whose verts connect to only 2 edges. Stuck again now though.

enter image description here


1 Answer 1

  1. Mark edges that have 2 neighbors:

  1. Mark vertices that weren't marked above: 12, 13, 16, 17.

  2. Mark edges that were marked in 1. or 2.

  3. Scale them to 0:

  1. Merge by Distance.

BTW, you don't really need to use "Capture Attribute" nodes, but they make it easier to divide the process into a logic that can be followed from left to right, as opposed to this:


You must log in to answer this question.

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