20 #ifndef LIBMESH_POINT_LOCATOR_BASE_H 21 #define LIBMESH_POINT_LOCATOR_BASE_H 28 #ifdef LIBMESH_FORWARD_DECLARE_ENUMS 46 class PointLocatorBase;
92 virtual void clear() = 0;
98 virtual void init() = 0;
106 const std::set<subdomain_id_type> * allowed_subdomains =
nullptr)
const = 0;
113 std::set<const Elem *> & candidate_elements,
114 const std::set<subdomain_id_type> * allowed_subdomains =
nullptr)
const = 0;
134 const std::set<subdomain_id_type> * allowed_subdomains =
nullptr,
212 #endif // LIBMESH_POINT_LOCATOR_BASE_H virtual void disable_out_of_mesh_mode()=0
virtual ~PointLocatorBase()
A geometric point in (x,y,z) space associated with a DOF.
virtual void set_close_to_point_tol(Real close_to_point_tol)
bool _use_close_to_point_tol
The base class for all geometric element types.
static const Real TOLERANCE
virtual const Node * locate_node(const Point &p, const std::set< subdomain_id_type > *allowed_subdomains=nullptr, Real tol=TOLERANCE) const
PointLocatorBase(const MeshBase &mesh, const PointLocatorBase *master)
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
virtual const Elem * operator()(const Point &p, const std::set< subdomain_id_type > *allowed_subdomains=nullptr) const =0
const PointLocatorBase * _master
virtual void unset_close_to_point_tol()
virtual void enable_out_of_mesh_mode()=0
static std::unique_ptr< PointLocatorBase > build(PointLocatorType t, const MeshBase &mesh, const PointLocatorBase *master=nullptr)
A geometric point in (x,y,z) space.
const MeshBase & get_mesh() const