23#ifndef VCL_ALGORITHMS_CORE_DISTANCE_FUNCTIONS_H
24#define VCL_ALGORITHMS_CORE_DISTANCE_FUNCTIONS_H
45template<
typename Obj1,
typename Obj2,
typename ST>
46concept BoundedDistFunctionExists =
77template<
typename Obj1,
typename Obj2>
126template<
typename Obj1,
typename Obj2,
typename ScalarType =
double>
129 if constexpr (detail::BoundedDistFunctionExists<Obj1, Obj2, ScalarType>) {
130 auto f = [](
const Obj1&
o1,
const Obj2&
o2, ScalarType s) {
137 auto f = [](
const Obj1&
o1,
const Obj2&
o2, ScalarType) {
A class representing a box in N-dimensional space.
Definition box.h:46
auto boundedDistFunction()
Return a proper bounded distance function between a Obj1 object and an Obj2 object.
Definition functions.h:127
auto boundedDistance(const PointType &p, const TriangleType &triangle, ScalarType maxDist, PointType &closest, bool signedDist=false)
Compute the bounded distance between a 3D point and a 3D triangle.
Definition distance.h:203
auto distance(const PointType &point0, const PointType &point1)
Compute the distance between two Points of any dimension.
Definition distance.h:45
auto distFunction()
Return a proper dist function between a Obj1 object and an Obj2 object.
Definition functions.h:78