Base class for 2D and 3D trees. More...
#include <SMESH_Tree.hxx>

Public Types | |
| typedef BND_BOX | box_type |
Public Member Functions | |
| SMESH_Tree (SMESH_TreeLimit *limit=0) | |
| Constructor. More... | |
| virtual | ~SMESH_Tree () |
| SMESH_Tree Destructor. More... | |
| void | compute () |
| Compute the Tree. More... | |
| bool | isLeaf () const |
| Tell if Tree is a leaf or not An inheriting class can influence it via myIsLeaf protected field. More... | |
| int | level () const |
| const box_type * | getBox () const |
| int | getHeight (const bool full=true) const |
| Return height of the tree, full or from this level to topest leaf. More... | |
| virtual double | maxSize () const =0 |
Static Public Member Functions | |
| static int | nbChildren () |
Protected Member Functions | |
| virtual box_type * | buildRootBox ()=0 |
| virtual SMESH_Tree * | newChild () const =0 |
| virtual box_type * | newChildBox (int childIndex) const =0 |
| virtual void | enlargeByFactor (box_type *box, double factor) const =0 |
| virtual void | buildChildrenData ()=0 |
| void | buildChildren () |
| Build the children boxes and call buildChildrenData() More... | |
Protected Attributes | |
| SMESH_Tree ** | myChildren |
| SMESH_Tree * | myFather |
| bool | myIsLeaf |
| const SMESH_TreeLimit * | myLimit |
| box_type * | myBox |
| int | myLevel |
Base class for 2D and 3D trees.
| typedef BND_BOX SMESH_Tree< BND_BOX, NB_CHILDREN >::box_type |
| SMESH_Tree< BND_BOX, NB_CHILDREN >::SMESH_Tree | ( | SMESH_TreeLimit * | limit = 0 | ) |
Constructor.
limit must be provided at tree root construction. limit will be deleted by SMESH_Tree.
|
virtual |
SMESH_Tree Destructor.
|
protected |
Build the children boxes and call buildChildrenData()
|
protectedpure virtual |
Implemented in SMESH::Controls::ElementsOnShape::OctreeClassifier, VISCOUS_2D::_SegmentTree, and SMESH_OctreeNode.
|
protectedpure virtual |
Implemented in SMESH::Controls::ElementsOnShape::OctreeClassifier, VISCOUS_2D::_SegmentTree, and SMESH_OctreeNode.
| void SMESH_Tree< BND_BOX, NB_CHILDREN >::compute | ( | ) |
Compute the Tree.
|
protectedpure virtual |
Implemented in SMESH_Octree, and SMESH_Quadtree.
| const box_type* SMESH_Tree< BND_BOX, NB_CHILDREN >::getBox | ( | ) | const |
| int SMESH_Tree< BND_BOX, NB_CHILDREN >::getHeight | ( | const bool | full = true | ) | const |
Return height of the tree, full or from this level to topest leaf.
| bool SMESH_Tree< BND_BOX, NB_CHILDREN >::isLeaf | ( | ) | const |
Tell if Tree is a leaf or not An inheriting class can influence it via myIsLeaf protected field.
Referenced by SMESH_NodeSearcherImpl::FindClosestTo(), SMESH::Controls::ElementsOnShape::OctreeClassifier::OctreeClassifier(), and SMESH_NodeSearcherImpl::SMESH_NodeSearcherImpl().
| int SMESH_Tree< BND_BOX, NB_CHILDREN >::level | ( | ) | const |
|
pure virtual |
Implemented in SMESH_Octree, and SMESH_Quadtree.
|
static |
|
protectedpure virtual |
Implemented in SMESH::Controls::ElementsOnShape::OctreeClassifier, VISCOUS_2D::_SegmentTree, and SMESH_OctreeNode.
|
protectedpure virtual |
Implemented in SMESH_Octree, and SMESH_Quadtree.
|
protected |
Referenced by SMESH_Tree< Bnd_B3d, 8 >::getBox().
|
protected |
|
protected |
|
protected |
|
protected |
Referenced by SMESH_Tree< Bnd_B3d, 8 >::level().
|
protected |