Class Hierarchy
AcRxObject AcBrTraverser AcBrLoopEdgeTraverser
C++
class AcBrLoopEdgeTraverser : public AcBrTraverser;
File
brletrav.h
Description
The AcBrLoopEdgeTraverser class is the interface class for loop-edge traversers. It is used to get access to edge-bound data that requires the context of a specific face/loop usage, such as parameter curves. In order to provide the tightest coupling with radial edge traversals (that is, AcBrEdgeLoopTraverser), the face is represented by its loop boundary at the shared edge.
Used By AcBrEdgeLoopTraverser::setEdgeAndLoop()
Remarks
The intended use of the AcBrLoopEdgeTraverser class is to traverse all of the edges in a loop exactly once, in persistent order, starting either with a picked edge or a default edge; to continue a downward hierarchical traversal of all of the loops, edges, and vertices on a face; or to mix an upward hierarchical and downward hierarchical traversal in order to establish context for a picked edge.
The specific order of edges along a loop is consistent (clockwise/counterclockwise), if one looks at the surface associated with the loop's face owner in the direction of the face normal, taking into consideration the face orientation.
If the loop represents a singularity (for example, setLoop() returns eUnsuitableTopology, such as at the apex of a cone), use the loop to (re)set an AcBrLoopVertexTraverser instead.
The next() and done() functions (inherited from AcBrTraverser) treat (semi-)infinite loops (also known as open loops) as circular lists, just like all other adjacency lists.
The orientation of the edge along the loop should be combined with the orientation of the edge with respect to its underlying curve to determine the correct order to read vertex1 and vertex2 for each edge in the context of a face, or for the reconstruction of the vertex boundary list of a given face.
Links
AcBrLoopEdgeTraverser Constructor, AcBrLoopEdgeTraverser Methods, AcBrLoopEdgeTraverser Operators
See Also
AcBrBrepFaceTraverser, AcBrEdgeLoopTraverser, AcBrFaceLoopTraverser, AcBrLoopVertexTraverser, AcBrEdge