Open CASCADE Technology Reference Manual 8.0.0
Loading...
Searching...
No Matches
Public Types
BOPTools_BoxSelector< Dimension > Class Template Reference

Template Selector for elements selection from BVH tree. More...

#include <BOPTools_BoxSelector.hxx>

Inheritance diagram for BOPTools_BoxSelector< Dimension >:
Inheritance graph
[legend]

Public Types

typedef BVH::VectorType< double, Dimension >::Type BVH_VecNd
 
- Public Types inherited from BVH_Traverse< double, Dimension, BVH_BoxSet< double, Dimension, int >, bool >
typedef BVH_Box< double, Dimension >::BVH_VecNt BVH_VecNt
 

Public Member Functions

Constructor

Empty constructor

 BOPTools_BoxSelector ()=default
 
public interfaces

Clears the indices

void Clear ()
 Sets the box.
 
void SetBox (const BVH_Box< double, Dimension > &theBox)
 Sets the box.
 
const NCollection_List< int > & Indices () const
 Returns the list of accepted indices.
 
Rejection/Acceptance rules

Checks if the box should be rejected

bool RejectNode (const BVH_VecNd &theCMin, const BVH_VecNd &theCMax, bool &theIsInside) const override
 Checks if the element should be rejected.
 
bool RejectElement (const int theIndex)
 Checks if the element should be rejected.
 
bool AcceptMetric (const bool &theIsInside) const override
 Checks if the metric of the node may be accepted.
 
bool Accept (const int theIndex, const bool &theIsInside) override
 Accepts the element with the index <theIndex> in BVH tree.
 
- Public Member Functions inherited from BVH_Traverse< double, Dimension, BVH_BoxSet< double, Dimension, int >, bool >
 BVH_Traverse ()
 
void SetBVHSet (BVH_BoxSet< double, Dimension, int > *theBVHSet)
 
virtual bool RejectNode (const BVH_VecNt &theCornerMin, const BVH_VecNt &theCornerMax, bool &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.
 
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< double, 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
BVH_Box< double, Dimension > myBox
 Selection box.
 
NCollection_List< intmyIndices
 Selected indices.
 
- Protected Attributes inherited from BVH_Traverse< double, Dimension, BVH_BoxSet< double, Dimension, int >, bool >
BVH_BoxSet< double, Dimension, int > * myBVHSet
 

Additional Inherited Members

- Protected Member Functions inherited from BVH_BaseTraverse< MetricType >
 BVH_BaseTraverse ()
 Destructor.
 
virtual ~BVH_BaseTraverse ()=default
 Destructor.
 

Detailed Description

template<int Dimension>
class BOPTools_BoxSelector< Dimension >

Template Selector for elements selection from BVH tree.

Member Typedef Documentation

◆ BVH_VecNd

template<int Dimension>
typedef BVH::VectorType<double,Dimension>::Type BOPTools_BoxSelector< Dimension >::BVH_VecNd

Constructor & Destructor Documentation

◆ BOPTools_BoxSelector()

template<int Dimension>
BOPTools_BoxSelector< Dimension >::BOPTools_BoxSelector ( )
default

Member Function Documentation

◆ Accept()

template<int Dimension>
bool BOPTools_BoxSelector< Dimension >::Accept ( const int theIndex,
const bool & theIsInside )
inlineoverridevirtual

Accepts the element with the index <theIndex> in BVH tree.

Implements BVH_Traverse< double, Dimension, BVH_BoxSet< double, Dimension, int >, bool >.

◆ AcceptMetric()

template<int Dimension>
bool BOPTools_BoxSelector< Dimension >::AcceptMetric ( const bool & theIsInside) const
inlineoverridevirtual

Checks if the metric of the node may be accepted.

Reimplemented from BVH_Traverse< double, Dimension, BVH_BoxSet< double, Dimension, int >, bool >.

◆ Clear()

template<int Dimension>
void BOPTools_BoxSelector< Dimension >::Clear ( )
inline

Sets the box.

◆ Indices()

template<int Dimension>
const NCollection_List< int > & BOPTools_BoxSelector< Dimension >::Indices ( ) const
inline

Returns the list of accepted indices.

◆ RejectElement()

template<int Dimension>
bool BOPTools_BoxSelector< Dimension >::RejectElement ( const int theIndex)
inline

Checks if the element should be rejected.

◆ RejectNode()

template<int Dimension>
bool BOPTools_BoxSelector< Dimension >::RejectNode ( const BVH_VecNd & theCMin,
const BVH_VecNd & theCMax,
bool & theIsInside ) const
inlineoverride

Checks if the element should be rejected.

◆ SetBox()

template<int Dimension>
void BOPTools_BoxSelector< Dimension >::SetBox ( const BVH_Box< double, Dimension > & theBox)
inline

Sets the box.

Field Documentation

◆ myBox

template<int Dimension>
BVH_Box<double, Dimension> BOPTools_BoxSelector< Dimension >::myBox
protected

Selection box.

◆ myIndices

template<int Dimension>
NCollection_List<int> BOPTools_BoxSelector< Dimension >::myIndices
protected

Selected indices.


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