11 #ifndef smtk_session_mesh_ClosestPoint_h
12 #define smtk_session_mesh_ClosestPoint_h
14 #include "smtk/session/mesh/Exports.h"
16 #include "smtk/geometry/queries/ClosestPoint.h"
18 #include "smtk/mesh/core/Component.h"
20 #include "smtk/session/mesh/Resource.h"
36 std::array<double, 3> operator()(
37 const smtk::resource::Component::Ptr& component,
38 const std::array<double, 3>& sourcePoint)
const override
42 std::dynamic_pointer_cast<smtk::session::mesh::Resource>(component->resource()))
45 auto elementIt = topology->m_elements.find(component->id());
47 if (elementIt != topology->m_elements.end())
49 smtk::mesh::Resource::Ptr meshResource = resource->resource();
55 return smtk::geometry::ClosestPoint::operator()(component, sourcePoint);