-protected:
- // Return box of the whole tree
- virtual Bnd_B3d* buildRootBox() = 0;
-
- // Constructor for children
- virtual SMESH_Octree* allocateOctreeChild() const = 0;
-
- // Build the data in the 8 children
- virtual void buildChildrenData() = 0;
-
- // members
-
- // Array of 8 Octree children
- SMESH_Octree** myChildren;
-
- // Point the father, set to NULL for the level 0
- SMESH_Octree* myFather;
-
- // Tell us if the Octree is a leaf or not
- bool myIsLeaf;
-
- // Tree limit
- const Limit* myLimit;
-
-private:
- // Build the 8 children boxes recursively
- void buildChildren();
-
- // Level of the Octree
- int myLevel;
-
- Bnd_B3d* myBox;
+ // Allocate a bndbox according to childIndex. childIndex is zero based
+ virtual Bnd_B3d* newChildBox(int childIndex) const;