![]() |
Open CASCADE Technology Reference Manual 8.0.0
|
Abstract class implementing the traverse of the single binary tree. Selection of the data from the tree is performed by the rules defined in the Accept/Reject methods. See description of the required methods in the comments above. More...
#include <BVH_Traverse.hxx>

Data Structures | |
| struct | BVH_NodeInStack |
Public Types | |
public types | |
| typedef BVH_Box< NumType, Dimension >::BVH_VecNt | BVH_VecNt |
Public Member Functions | |
Constructor | |
Constructor | |
| BVH_Traverse () | |
Setting the set to access the elements and BVH tree | |
| void | SetBVHSet (BVHSetType *theBVHSet) |
Rules for Accept/Reject | |
Basing on the given metric, checks if the whole branch may be accepted without any further checks. Returns true if the metric is accepted, false otherwise. | |
| virtual bool | AcceptMetric (const MetricType &) const |
| Rejection of the node by bounding box. Metric is computed to choose the best branch. Returns true if the node should be rejected, false otherwise. | |
| virtual bool | RejectNode (const BVH_VecNt &theCornerMin, const BVH_VecNt &theCornerMax, MetricType &theMetric) const =0 |
| Rejection of the node by bounding box. Metric is computed to choose the best branch. Returns true if the node should be rejected, false otherwise. | |
| virtual bool | Accept (const int theIndex, const MetricType &theMetric)=0 |
| Leaf element acceptance. Metric of the parent leaf-node is passed to avoid the check on the element and accept it unconditionally. Returns true if the element has been accepted, false otherwise. | |
Selection | |
| int | Select () |
| Performs selection of the elements from the BVH tree by the rules defined in Accept/Reject methods. Returns the number of accepted elements. | |
| int | Select (const opencascade::handle< BVH_Tree< NumType, Dimension > > &theBVH) |
| Performs selection of the elements from the BVH tree by the rules defined in Accept/Reject methods. Returns the number of accepted elements. | |
Public Member Functions inherited from BVH_BaseTraverse< MetricType > | |
| virtual bool | IsMetricBetter (const MetricType &, const MetricType &) const |
| virtual bool | RejectMetric (const MetricType &) const |
| virtual bool | Stop () const |
Protected Attributes | |
Fields | |
| BVHSetType * | myBVHSet |
Additional Inherited Members | |
Protected Member Functions inherited from BVH_BaseTraverse< MetricType > | |
| BVH_BaseTraverse () | |
| Destructor. | |
| virtual | ~BVH_BaseTraverse ()=default |
| Destructor. | |
Abstract class implementing the traverse of the single binary tree. Selection of the data from the tree is performed by the rules defined in the Accept/Reject methods. See description of the required methods in the comments above.
| NumType | Numeric data type |
| Dimension | Vector dimension |
| BVHSetType | Type of set containing the BVH tree (required to access the elements by the index) |
| MetricType | Type of metric to perform more optimal tree descend |
| typedef BVH_Box<NumType,Dimension>::BVH_VecNt BVH_Traverse< NumType, Dimension, BVHSetType, MetricType >::BVH_VecNt |
|
inline |
|
pure virtual |
Leaf element acceptance. Metric of the parent leaf-node is passed to avoid the check on the element and accept it unconditionally. Returns true if the element has been accepted, false otherwise.
Implemented in BOPTools_BoxSelector< Dimension >.
|
inlinevirtual |
Rejection of the node by bounding box. Metric is computed to choose the best branch. Returns true if the node should be rejected, false otherwise.
Reimplemented in BOPTools_BoxSelector< Dimension >.
|
pure virtual |
Rejection of the node by bounding box. Metric is computed to choose the best branch. Returns true if the node should be rejected, false otherwise.
|
inline |
Performs selection of the elements from the BVH tree by the rules defined in Accept/Reject methods. Returns the number of accepted elements.
| int BVH_Traverse< NumType, Dimension, BVHSetType, MetricType >::Select | ( | const opencascade::handle< BVH_Tree< NumType, Dimension > > & | theBVH | ) |
Performs selection of the elements from the BVH tree by the rules defined in Accept/Reject methods. Returns the number of accepted elements.
|
inline |
|
protected |