Version: 8.3.0
SMESH_ElementSearcher Struct Referenceabstract

Searcher for elements. More...

#include <SMESH_MeshAlgos.hxx>

Inheritance diagram for SMESH_ElementSearcher:

Public Member Functions

virtual int FindElementsByPoint (const gp_Pnt &point, SMDSAbs_ElementType type, std::vector< const SMDS_MeshElement * > &foundElems)=0
 Find elements of given type where the given point is IN or ON. More...
 
virtual const SMDS_MeshElementFindClosestTo (const gp_Pnt &point, SMDSAbs_ElementType type)=0
 Return an element most close to the given point. More...
 
virtual void GetElementsNearLine (const gp_Ax1 &line, SMDSAbs_ElementType type, std::vector< const SMDS_MeshElement * > &foundElems)=0
 Return elements possibly intersecting the line. More...
 
virtual void GetElementsInSphere (const gp_XYZ &center, const double radius, SMDSAbs_ElementType type, std::vector< const SMDS_MeshElement * > &foundElems)=0
 Return elements whose bounding box intersects a sphere. More...
 
virtual TopAbs_State GetPointState (const gp_Pnt &point)=0
 Find out if the given point is out of closed 2D mesh. More...
 
virtual ~SMESH_ElementSearcher ()
 Implementation of search for the elements by point and of classification of point in 2D mesh. More...
 

Detailed Description

Searcher for elements.

Constructor & Destructor Documentation

SMESH_ElementSearcher::~SMESH_ElementSearcher ( )
virtual

Implementation of search for the elements by point and of classification of point in 2D mesh.

Member Function Documentation

virtual const SMDS_MeshElement* SMESH_ElementSearcher::FindClosestTo ( const gp_Pnt &  point,
SMDSAbs_ElementType  type 
)
pure virtual

Return an element most close to the given point.

Implemented in SMESH_ElementSearcherImpl.

Referenced by SMESH_MeshEditor::GetHexaFacetsToSplit(), and SMESH_MeshEditor_i::Reorient2D().

virtual int SMESH_ElementSearcher::FindElementsByPoint ( const gp_Pnt &  point,
SMDSAbs_ElementType  type,
std::vector< const SMDS_MeshElement * > &  foundElems 
)
pure virtual

Find elements of given type where the given point is IN or ON.

   Returns nb of found elements and elements them-selves.

'ALL' type means elements of any type excluding nodes and 0D elements

Implemented in SMESH_ElementSearcherImpl.

Referenced by StdMeshers_QuadToTriaAdaptor::Compute(), SMESH_MeshEditor_i::FindAmongElementsByPoint(), SMESH_MeshAlgos::FindCoincidentFreeBorders(), SMESH_MeshEditor_i::FindElementsByPoint(), and SMESH::Controls::ConnectedElements::SetPoint().

virtual void SMESH_ElementSearcher::GetElementsInSphere ( const gp_XYZ &  center,
const double  radius,
SMDSAbs_ElementType  type,
std::vector< const SMDS_MeshElement * > &  foundElems 
)
pure virtual

Return elements whose bounding box intersects a sphere.

Implemented in SMESH_ElementSearcherImpl.

Referenced by StdMeshers_QuadToTriaAdaptor::Compute2ndPart(), and VISCOUS_3D::_ViscousBuilder::findCollisionEdges().

virtual void SMESH_ElementSearcher::GetElementsNearLine ( const gp_Ax1 &  line,
SMDSAbs_ElementType  type,
std::vector< const SMDS_MeshElement * > &  foundElems 
)
pure virtual

Return elements possibly intersecting the line.

Implemented in SMESH_ElementSearcherImpl.

Referenced by StdMeshers_QuadToTriaAdaptor::Compute(), and VISCOUS_3D::_LayerEdge::FindIntersection().

virtual TopAbs_State SMESH_ElementSearcher::GetPointState ( const gp_Pnt &  point)
pure virtual

Find out if the given point is out of closed 2D mesh.

Implemented in SMESH_ElementSearcherImpl.

Referenced by StdMeshers_QuadToTriaAdaptor::Compute(), and SMESH_MeshEditor_i::GetPointState().