Implementation of search for the node closest to point. More...
Public Member Functions | |
SMESH_NodeSearcherImpl (const SMDS_Mesh *theMesh=0, SMDS_ElemIteratorPtr theElemIt=SMDS_ElemIteratorPtr()) | |
Constructor. More... | |
void | MoveNode (const SMDS_MeshNode *node, const gp_Pnt &toPnt) |
Move node and update myOctreeNode accordingly. More... | |
const SMDS_MeshNode * | FindClosestTo (const gp_Pnt &thePnt) |
Do it's job. More... | |
int | FindNearPoint (const gp_Pnt &point, const double tolerance, std::vector< const SMDS_MeshNode * > &foundNodes) |
Finds nodes located within a tolerance near a point. More... | |
~SMESH_NodeSearcherImpl () | |
Destructor. More... | |
const SMESH_OctreeNode * | getTree () const |
Return the node tree. More... | |
Private Attributes | |
SMESH_OctreeNode * | myOctreeNode |
SMDS_Mesh * | myMesh |
double | myHalfLeafSize |
Implementation of search for the node closest to point.
SMESH_NodeSearcherImpl::SMESH_NodeSearcherImpl | ( | const SMDS_Mesh * | theMesh = 0 , |
SMDS_ElemIteratorPtr | theElemIt = SMDS_ElemIteratorPtr() |
||
) |
SMESH_NodeSearcherImpl::~SMESH_NodeSearcherImpl | ( | ) |
Destructor.
|
virtual |
Do it's job.
Implements SMESH_NodeSearcher.
References SMESH_Tree< BND_BOX, NB_CHILDREN >::getBox(), SMESH_OctreeNode::GetChildrenIterator(), SMESH_OctreeNode::GetNodeIterator(), SMESH_OctreeNode::isInside(), SMESH_Tree< BND_BOX, NB_CHILDREN >::isLeaf(), SMESH_OctreeNode::NbNodes(), and SMESH_OctreeNode::NodesAround().
|
virtual |
Finds nodes located within a tolerance near a point.
Implements SMESH_NodeSearcher.
Referenced by SMESH_ElementSearcherImpl::FindElementsByPoint().
const SMESH_OctreeNode* SMESH_NodeSearcherImpl::getTree | ( | ) | const |
Return the node tree.
Referenced by SMESH_ElementSearcherImpl::getTolerance().
|
virtual |
Move node and update myOctreeNode accordingly.
Implements SMESH_NodeSearcher.
References SMDS_MeshNode::X().
|
private |
|
private |
|
private |