17#ifdef DEAL_II_WITH_ARBORX
25 template <
int dim,
typename Number>
29 static_assert(dim >= 1 && dim <= 3);
40 template <
int dim,
typename Number>
46 for (
unsigned int i = 0; i <
size; ++i)
60 const ::Point<3, float> &
68 template <
int dim,
typename Number>
76 template <
int dim,
typename Number>
79 const unsigned int n_nearest_neighbors)
81 , n_nearest_neighbors(n_nearest_neighbors)
93 template <
int dim,
typename Number>
97 const unsigned int size =
bb.size();
101 for (
unsigned int i = 0; i <
size; ++i)
103 auto boundary_points =
bb[i].get_boundary_points();
106 for (
unsigned int d = 0; d < dim; ++d)
126 const ::BoundingBox<3, float> &
134 template <
int dim,
typename Number>
142 template <
int dim,
typename Number>
145 const unsigned int n_nearest_neighbors)
147 , n_nearest_neighbors(n_nearest_neighbors)
159 template <
int dim,
typename Number>
166 for (
unsigned int i = 0; i <
size; ++i)
185 const std::pair<::Point<3, float>,
float> &
193 template <
int dim,
typename Number>
201 template <
int dim,
typename Number>
204 const unsigned int n_nearest_neighbors)
206 , n_nearest_neighbors(n_nearest_neighbors)
224 template <
int dim,
typename Number>
228 static_assert(dim >= 1 && dim <= 3);
230 return {float(p[0]), 0.f, 0.f};
232 return {float(p[0]), float(p[1]), 0.f};
234 return {float(p[0]), float(p[1]), float(p[2])};
241 template <
int dim,
typename Number>
251 template <
int dim,
typename Number>
265 template <
int dim,
typename Number>
275 template <
int dim,
typename Number>
280 const auto boundary_points = v[i].get_boundary_points();
291 template <
int dim,
typename Number>
302 template <
int dim,
typename Number>
316# include "arborx/access_traits.inst"
BoundingBoxIntersectPredicate(const std::vector<::BoundingBox< dim, Number > > &bounding_boxes)
unsigned int n_nearest_neighbors
BoundingBoxNearestPredicate(const std::vector<::BoundingBox< dim, Number > > &bounding_boxes, const unsigned int n_nearest_neighbors)
unsigned int get_n_nearest_neighbors() const
BoundingBoxPredicate(const std::vector<::BoundingBox< dim, Number > > &bounding_boxes)
std::vector<::BoundingBox< 3, float > > bounding_boxes
const ::BoundingBox< 3, float > & get(unsigned int i) const
PointIntersectPredicate(const std::vector<::Point< dim, Number > > &points)
unsigned int n_nearest_neighbors
unsigned int get_n_nearest_neighbors() const
PointNearestPredicate(const std::vector<::Point< dim, Number > > &points, const unsigned int n_nearest_neighbors)
std::vector<::Point< 3, float > > points
PointPredicate(const std::vector<::Point< dim, Number > > &points)
const ::Point< 3, float > & get(unsigned int i) const
SphereIntersectPredicate(const std::vector< std::pair<::Point< dim, Number >, Number > > &spheres)
unsigned int n_nearest_neighbors
unsigned int get_n_nearest_neighbors() const
SphereNearestPredicate(const std::vector< std::pair<::Point< dim, Number >, Number > > &spheres, const unsigned int n_nearest_neighbors)
const std::pair<::Point< 3, float >, float > & get(unsigned int) const
std::vector< std::pair<::Point< 3, float >, float > > spheres
SpherePredicate(const std::vector< std::pair<::Point< dim, Number >, Number > > &spheres)
friend class Point< dim, Number >
#define DEAL_II_NAMESPACE_OPEN
#define DEAL_II_NAMESPACE_CLOSE