Iam thinking about adding a new Topology Geometry Node: “Corners of Edge”.
Using this node you can recreate a “Faces of Edeg” node for example.
I would implement the Node similar to the “Corners of Vertex” node:
I talked to @HooglyBoogly on Blender Chat about a possible implementation, but I am still not 100% sure what the best way of implementing this would be
Select All Corners:
Select Only Inner Corners:
Select Only Directional Corners pointing along the edge (Hans suggestion):
I think the 1. one would be the most logical one from a user standpoint. The thing is this behaviour could be easily recreated with “Edge Verticies” → “Corners of Vertex” Nodes, which would make this node obsolete.
So the 3. implementation would give the user more control:
- He could get the other corner of the Face with the “Offset Corner in Face” node
- There would be also the possibility of getting the Faces of an Edge:
But I wanted to ask some more developer and people, what they think about the different implementations. So feel free to leave your opinion.
Another benefit of option 3 is that it’s easily invertible; the “Next Edge Index” output of the “Edges of Corner” node will give you the same edge you started with. While option 3 is also odd from the user standpoint, without knowledge of how mesh topology is stored, I think there’s also value in being less redundant. It’s generally easier to expand a topology search with more nodes than it is to shrink it.
Option number 3 make much more sense. Also, it deduplicate faces. And is allowed to find faces, only connected to edge. Not to points. This the most important part. This node do not duplicate function of other node and combinations of nodes. But added some more logic for other goal → finding faces of edge (not all faces of all corners of all points of edge \ all faces of corners of edge, but all faces of edge).
Thanks for the feedback. I do agree 3. is the best. Ill try to get it working next week.
if I’m correct in understanding that in version 3 there are only 2 corners per edge, then why not just expose both corners of the edge like the edge vertices node? we can skip the whole sorting thing.
There can be an arbitrary number of corners and connected faces on a non-manifold mesh. Longer term, hopefully we’ll be able to output the connected elements as a list anyway, which should make this all more intuitive.
oh. i didn’t think about non-manifold meshes.