interface version 1
Creates edge group(s) of polygonal edge loop(s), starting from specified edges.
...
Tip
In Houdini, the selected polygonal edge also have direction information. This SOP can (and does) take advantage of this additional information of the selection.
Parameters
Starting Group(s) | A list of edge groups (or individual polygonal edges) to select loops from. An edge loop will be looked for from each individual starting edge. | ||||
Walk Mode | The method of finding the next edge for an edge loop.
Tip Although the “Angle” mode might be faster, the “Topology” mode is usually what is considered to be the proper definition of an edge loop. | ||||
Loop Forwards, Loop Backwards | The direction(s) to extend starting edge(s) to form edge loop(s). | ||||
Max # Edges Forwards, Backwards | An optional edge count in each direction, limiting the length of an edge loop. | ||||
End Edge Group(s) | A list of edge groups and/or individual edges to be marked as “stop edges”. No loop will be grown further when hitting such an edge. | ||||
End Angle (Max) | The edge loop won’t group further if the angle between the current and the next edge exceeds this value. | ||||
Output Group Name | The name of the edge group(s) to be created. | ||||
Multiple Output Groups | If enabled, an individual edge group for each loop will be created, using the Output Group Name as base name. | ||||
Output Curves | If enabled, an open polygonal curve will be created for each loop. | ||||
Loop Index Attrib | Name of the per-point attribute to contain the number of the edge loop for each point belonging to the edges in the loop (similar to primitive indices). | ||||
In-Loop Point Attrib | Name of the per-point attribute to contain the index of the point within the loop for each point belonging to the edges in the loop (similar to vertex indices in a primitive). |
Known Issues
The following functionality are not implemented yet:
“Angle” mode
End edge (group)s
Output curves
To Do
Should work when applied from the 3d view with selected geometry (edges)
Make sure individual edges can be specified in Start Group(s) field (ditto for End Group(s))
End groups should be points instead of edges?
Highlight results in viewport somehow
...
Release Notes
interface version 1 —
2014-01-19 | First optimization pass (got about ~4x-8x faster, on average). Particulars: Speedups: 4x from reducing the number of findEdge() calls; ~2x (on average) on assuming single-element result of find_edges_by_pt(). |
2014-01-17 | Initial prototype (very slow but works). |