igor::iNodeVisitorBoundings Class Reference

#include <iNodeVisitorBoundings.h>

Inherits igor::iNodeVisitor.

Public Member Functions

void getSphere (iaSphered &sphere)
 
 iNodeVisitorBoundings ()
 
virtual ~iNodeVisitorBoundings ()=default
 
- Public Member Functions inherited from igor::iNodeVisitor
 iNodeVisitor ()=default
 
virtual ~iNodeVisitor ()=default
 
void setTraverseInactiveChildren (bool traverseInactive=true)
 
void setTraverseSiblings (bool traverseSiblings=true)
 
void traverseTree (iNodePtr node)
 

Protected Member Functions

void preTraverse () override
 
virtual bool preOrderVisit (iNodePtr node, iNodePtr nextSibling) override
 
virtual void postOrderVisit (iNodePtr node) override
 
virtual void postTraverse () override
 
virtual void preTraverse ()=0
 
virtual bool preOrderVisit (iNodePtr node, iNodePtr nextSibling)=0
 
virtual void postOrderVisit (iNodePtr node)=0
 
virtual void postTraverse ()=0
 

Detailed Description

calculates the combined boundings of a subtree of nodes

Constructor & Destructor Documentation

◆ iNodeVisitorBoundings()

igor::iNodeVisitorBoundings::iNodeVisitorBoundings ( )

initializes node visitor

◆ ~iNodeVisitorBoundings()

virtual igor::iNodeVisitorBoundings::~iNodeVisitorBoundings ( )
virtualdefault

does nothing

Member Function Documentation

◆ getSphere()

void igor::iNodeVisitorBoundings::getSphere ( iaSphered sphere)
Returns
merged bounding sphere of all children while traversal

◆ postOrderVisit()

void igor::iNodeVisitorBoundings::postOrderVisit ( iNodePtr  node)
overrideprotectedvirtual

does nothing

Parameters
nodecurrent node

Implements igor::iNodeVisitor.

◆ postTraverse()

void igor::iNodeVisitorBoundings::postTraverse ( )
overrideprotectedvirtual

does nothing

Implements igor::iNodeVisitor.

◆ preOrderVisit()

bool igor::iNodeVisitorBoundings::preOrderVisit ( iNodePtr  node,
iNodePtr  nextSibling 
)
overrideprotectedvirtual

merges bounding spheres from all children while traversal

Parameters
nodecurrent node

Implements igor::iNodeVisitor.

◆ preTraverse()

void igor::iNodeVisitorBoundings::preTraverse ( )
overrideprotectedvirtual

does nothing

Implements igor::iNodeVisitor.


The documentation for this class was generated from the following files: