|
OOFEM 3.0
|
#include <octreelocalizertutil.h>
Public Member Functions | |
| ClosestNode (const FloatArray &pos, Domain *d) | |
| ~ClosestNode () | |
| Destructor. | |
| void | giveStartingPosition (FloatArray &position) override |
| bool | evaluate (int &nodeNr) override |
| void | giveResult (std ::list< int > &answer) override |
| bool | isBBXStage1Defined (BoundingBox &BBXStage1) override |
| bool | isBBXStage2Defined (BoundingBox &BBXStage2) override |
Protected Attributes | |
| FloatArray | startingPosition |
| Domain * | domain |
| int | CNindex |
| double | distanceToClosestNode |
| bool | initFlag |
| std ::list< int > | closestNodeIndices |
Functor for closest node search
Definition at line 161 of file octreelocalizertutil.h.
|
inline |
Constructor
| pos | Starting position of the search |
| d | Domain containing nodes |
Definition at line 178 of file octreelocalizertutil.h.
References domain, initFlag, and startingPosition.
|
inline |
Destructor.
Definition at line 184 of file octreelocalizertutil.h.
|
inlineoverridevirtual |
Evaluates a node. The closest nodes are stored in a container, if their distance to starting position is the same. Is the distance smaller than previous one, the container is emptied and new node is added.
| nodeNr | Number of the node in the domain list |
Implements oofem::SL_Evaluation_Functor< int >.
Definition at line 201 of file octreelocalizertutil.h.
References closestNodeIndices, oofem::distance(), distanceToClosestNode, oofem::DofManager::giveCoordinates(), oofem::Domain::giveNode(), initFlag, and startingPosition.
|
inlineoverridevirtual |
Gives the closest nodes
| answer | List containing numbers of the closest nodes |
Implements oofem::SL_Evaluation_Functor< int >.
Definition at line 228 of file octreelocalizertutil.h.
References closestNodeIndices.
|
inlineoverridevirtual |
Gives the starting position of the search
| position | startingPosition |
Implements oofem::SL_Evaluation_Functor< int >.
Definition at line 190 of file octreelocalizertutil.h.
References startingPosition.
|
inlineoverridevirtual |
Stage1 means, we are looking for objects in a distance given by some boundingBox (e.g. IPs around some given coordinates)
Implements oofem::SL_Evaluation_Functor< int >.
Definition at line 232 of file octreelocalizertutil.h.
|
inlineoverridevirtual |
Stage2BBX is given by results of a prior search. e.g. We found a closest point to another point in an octant, BBX is defined by the distance from each other and the found closest point. Now we have to check surrounding octants whithin this bounding, which may contain points closer to starting point.
Implements oofem::SL_Evaluation_Functor< int >.
Definition at line 237 of file octreelocalizertutil.h.
References distanceToClosestNode, initFlag, oofem::BoundingBox::setOrigin(), oofem::BoundingBox::setSize(), and startingPosition.
|
protected |
Definition at line 170 of file octreelocalizertutil.h.
Referenced by evaluate(), and giveResult().
|
protected |
Definition at line 166 of file octreelocalizertutil.h.
|
protected |
Definition at line 167 of file octreelocalizertutil.h.
Referenced by evaluate(), and isBBXStage2Defined().
|
protected |
Definition at line 165 of file octreelocalizertutil.h.
Referenced by ClosestNode().
|
protected |
Definition at line 168 of file octreelocalizertutil.h.
Referenced by ClosestNode(), evaluate(), and isBBXStage2Defined().
|
protected |
Definition at line 164 of file octreelocalizertutil.h.
Referenced by ClosestNode(), evaluate(), giveStartingPosition(), and isBBXStage2Defined().