API Reference > geometry-core > Curve > RecursiveCurveProcessorWithStack RecursiveCurveProcessorWithStack Class base class for detailed traversal of curve artifacts During recursion, maintains a stack that shows complete path to each artifact. Use the QuickRecursiveCurveProcessor to visit without recording the path. Extends RecursiveCurveProcessor Methods Name Description constructor(): RecursiveCurveProcessorWithStack Protected announceBagOfCurves(data: BagOfCurves, _indexInParent: number = -1): void Announce members of an unstructured collection. announceCurvePrimitive(_data: CurvePrimitive, _indexInParent: number = -1): void process a leaf primitive. announceLoop(data: Loop, indexInParent: number = -1): void announce a loop (recurse to children) announceParityRegion(data: ParityRegion, _indexInParent: number = -1): void announce beginning or end of loops in a parity region announcePath(data: Path, indexInParent: number = -1): void announce a path (recurse to children) announceUnexpected(_data: AnyCurve, _indexInParent: number): void process error content announceUnionRegion(data: UnionRegion, indexInParent: number = -1): void announce beginning or end of a parity region enter(data: CurveCollection): void Push data onto the stack so its status is available during processing of children. leave(): CurveCollection | undefined Pop the stack Properties Name Type Description _stack Protected CurveCollection[] Stack of curve collections that are "up the tree" from the current point of the traversal. Defined in core/geometry/src/curve/CurveProcessor.ts Line 78 Last Updated: 13 June, 2024