muu/bounding_box.h file

Contains the definition of muu::bounding_box.

Namespaces

namespace muu
The root namespace for all muu functions and types.

Classes

template <typename Scalar>
struct muu::bounding_box
An axis-aligned bounding box.
template <typename Scalar>
struct std::tuple_size<muu::bounding_box<Scalar>>
Specialization of std::tuple_size for muu::bounding_box.
template <size_t I, typename Scalar>
struct std::tuple_element<I, muu::bounding_box<Scalar>>
Specialization of std::tuple_element for muu::bounding_box.
template <typename Scalar>
struct muu::constants<bounding_box<Scalar>>
Axis-aligned bounding box constants.

Functions

template <typename S, typename T>
auto approx_equal(const bounding_box<S>& bb1, const bounding_box<T>& bb2, epsilon_type<S, T> epsilon = default_epsilon<S, T>) -> bool constexpr noexcept
Returns true if two bounding boxes are approximately equal.
template <typename S>
auto approx_zero(const bounding_box<S>& bb, S epsilon = default_epsilon<S>) -> bool constexpr noexcept
Returns true if all the scalar components of a bounding box are approximately equal to zero.
template <typename S>
auto degenerate(const bounding_box<S>& bb) -> bool constexpr noexcept
Returns true if a bounding box is degenerate (i.e. any of its extents are less than or equal to zero).
template <typename S>
auto infinity_or_nan(const bounding_box<S>& bb) -> bool constexpr noexcept
Returns true if any of the scalar components of a bounding box are infinity or NaN.