Abstract class implementing the parallel traverse of two binary trees. Selection of the data from the trees is performed by the rules defined in the Accept/Reject methods. See description of the required methods in the comments above.
More...
|
|
|
| | BVH_PairTraverse () |
| |
|
Sets the BVH Sets containing the BVH trees
|
| void | SetBVHSets (BVHSetType *theBVHSet1, BVHSetType *theBVHSet2) |
| |
|
Rejection of the pair of nodes by bounding boxes. Metric is computed to choose the best branch. Returns true if the pair of nodes should be rejected, false otherwise.
|
| virtual Standard_Boolean | RejectNode (const BVH_VecNt &theCornerMin1, const BVH_VecNt &theCornerMax1, const BVH_VecNt &theCornerMin2, const BVH_VecNt &theCornerMax2, MetricType &theMetric) const =0 |
| | Leaf element acceptance. Returns true if the pair of elements is accepted, false otherwise.
|
| |
| virtual Standard_Boolean | Accept (const Standard_Integer theIndex1, const Standard_Integer theIndex2)=0 |
| | Leaf element acceptance. Returns true if the pair of elements is accepted, false otherwise.
|
| |
|
Selection of the pairs of elements of two BVH trees by the rules defined in Accept/Reject methods. The method requires the BVHSets containing BVH trees to be set. Returns the number of accepted pairs of elements.
|
| Standard_Integer | Select () |
| | Performs selection of the elements from two BVH trees by the rules defined in Accept/Reject methods. Returns the number of accepted pairs of elements.
|
| |
| Standard_Integer | Select (const opencascade::handle< BVH_Tree< NumType, Dimension > > &theBVH1, const opencascade::handle< BVH_Tree< NumType, Dimension > > &theBVH2) |
| | Performs selection of the elements from two BVH trees by the rules defined in Accept/Reject methods. Returns the number of accepted pairs of elements.
|
| |
| virtual Standard_Boolean | IsMetricBetter (const NumType &, const NumType &) const |
| |
| virtual Standard_Boolean | RejectMetric (const NumType &) const |
| |
| virtual Standard_Boolean | Stop () const |
| |
template<class NumType, int Dimension, class BVHSetType = void, class MetricType = NumType>
class BVH_PairTraverse< NumType, Dimension, BVHSetType, MetricType >
Abstract class implementing the parallel traverse of two binary trees. Selection of the data from the trees is performed by the rules defined in the Accept/Reject methods. See description of the required methods in the comments above.
- Template Parameters
-
| 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 |