31 std::conditional_t<std::is_same_v<T, float>,
double,
long double>;
109 template <
typename T>
123 template <
typename T>
240 template <
typename T>
256 template <
typename T>
278 template <
typename T>
304 template <
typename T>
386 template <
typename T>
393 template <
typename T>
400 template <
typename T>
407 template <
typename T>
414 template <
typename T>
421 template <
typename T>
426 return result ? std::optional<Point3<T>>(
result->PointInAabb)
430 template <
typename T>
437 template <
typename T>
444 template <
typename T>
451 template <
typename T>
458 template <
typename T>
465 template <
typename T>
472 template <
typename T>
479 template <
typename T>
484 return result ? std::optional<T>(
result->SquaredDistance)
488 template <
typename T>
495 template <
typename T>
502 template <
typename T>
509 template <
typename T>
516 template <
typename T>
523 template <
typename T>
530 template <
typename T>
537 template <
typename T>
544 template <
typename T>
549 return result ? std::optional<T>(
result->Distance()) : std::nullopt;
552 template <
typename T>
559 template <
typename T>
566 template <
typename T>
573 template <
typename T>
PointTriangleClosest3< T > MakePointTriangleClosest(const Point3< T > &point, const Point3< T > &pointOnTriangle, const Vec3< T > &barycentric) noexcept
T PointDistanceSquared(const Point3< T > &first, const Point3< T > &second) noexcept
std::conditional_t< std::is_same_v< T, float >, double, long double > QueryCalculation
QueryCalculation< T > DotPrecise(const Vec3< T > &first, const Vec3< T > &second) noexcept
constexpr T Dot(const Quat< T > &left, const Quat< T > &right) noexcept
Vec3< T > Cross(const Vec3< T > &left, const Vec3< T > &right) noexcept
std::optional< PointAabbClosest3< T > > TryClosestPoints(const Point3< T > &point, const Aabb3< T > &box) noexcept
std::optional< Point3< T > > TryClosestPoint(const Point3< T > &point, const Aabb3< T > &box) noexcept
T Distance(const Point3< T > &point, const Line3< T > &line) noexcept
bool Contains(const Capsule3< T > &capsule, const Point3< T > &point) noexcept
constexpr T LengthSquared(const Quat< T > &value) noexcept
Point3< T > ClosestPoint(const Point3< T > &point, const Line3< T > &line) noexcept
std::optional< T > TryDistance(const Point3< T > &point, const Aabb3< T > &box) noexcept
PointLineClosest3< T > ClosestPoints(const Point3< T > &point, const Line3< T > &line) noexcept
std::optional< T > TryDistanceSquared(const Point3< T > &point, const Aabb3< T > &box) noexcept
T DistanceSquared(const Point3< T > &point, const Line3< T > &line) noexcept