Math » infinity_or_nan() module

Checks for infinities and not-a-numbers (NaN).

Functions

template <typename S>
auto infinity_or_nan(const axis_angle<S>& aa) -> bool constexpr noexcept
Returns true if any of the scalars in an axis-angle are infinity or NaN.
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.
template <typename S>
auto infinity_or_nan(const bounding_sphere<S>& bs) -> bool constexpr noexcept
Returns true if any of the scalar components of a bounding sphere are infinity or NaN.
template <typename S>
auto infinity_or_nan(const euler_angles<S>& rot) -> bool constexpr noexcept
Returns true if any of the angles in a set of euler angles are infinity or NaN.
auto infinity_or_nan(half x) -> bool constexpr noexcept
Returns true if a half-precision float is infinity or NaN.
template <typename S>
auto infinity_or_nan(const line_segment<S>& seg) -> bool constexpr noexcept
Returns true if any of the points in a line segment are infinity or NaN.
auto infinity_or_nan(float x) -> bool constexpr noexcept
Returns true if a float is infinity or NaN.
auto infinity_or_nan(double x) -> bool constexpr noexcept
Returns true if a double is infinity or NaN.
auto infinity_or_nan(long double x) -> bool constexpr noexcept
Returns true if a long double is infinity or NaN.
auto infinity_or_nan(float128_t x) -> bool constexpr noexcept
Returns true if a float128_t is infinity or NaN.
auto infinity_or_nan(_Float16 x) -> bool constexpr noexcept
Returns true if a _Float16 is infinity or NaN.
template <typename T>
auto infinity_or_nan(T x) -> bool constexpr noexcept
Returns true if an arithmetic value is infinity or NaN.
template <typename T, size_t N>
auto infinity_or_nan(const T(&vals)[N]) -> bool constexpr noexcept
Returns true if any value in array is infinity or NaN.
template <typename T, typename U, typename... V>
auto infinity_or_nan(const T& val1, const U& val2, const V&... vals) -> bool constexpr noexcept
Returns true if any of the given values is infinity or NaN.
template <typename S, size_t R, size_t C>
auto infinity_or_nan(const matrix<S, R, C>& m) -> bool constexpr noexcept
Returns true if any of the scalar components of a matrix are infinity or NaN.
template <typename S>
auto infinity_or_nan(const oriented_bounding_box<S>& bb) -> bool constexpr noexcept
Returns true if any of the scalar components of an oriented bounding box are infinity or NaN.
template <typename S>
auto infinity_or_nan(const plane<S>& p) -> bool constexpr noexcept
Returns true if any of the scalar components of a plane are infinity or NaN.
template <typename S>
auto infinity_or_nan(const quaternion<S>& q) -> bool constexpr noexcept
Returns true if any of the scalar components of a quaternion are infinity or NaN.
template <typename S>
auto infinity_or_nan(const ray<S>& r) -> bool constexpr noexcept
Returns true if any of the scalars in a ray are infinity or NaN.
template <typename S>
auto infinity_or_nan(const triangle<S>& tri) -> bool constexpr noexcept
Returns true if any of the points in a triangle are infinity or NaN.
template <typename S, size_t D>
auto infinity_or_nan(const vector<S, D>& v) -> bool constexpr noexcept
Returns true if any of the scalar components of a vector are infinity or NaN.

Function documentation

template <typename S>
bool infinity_or_nan(const axis_angle<S>& aa) constexpr noexcept

Returns true if any of the scalars in an axis-angle are infinity or NaN.

template <typename S>
bool infinity_or_nan(const bounding_box<S>& bb) constexpr noexcept

Returns true if any of the scalar components of a bounding box are infinity or NaN.

template <typename S>
bool infinity_or_nan(const bounding_sphere<S>& bs) constexpr noexcept

Returns true if any of the scalar components of a bounding sphere are infinity or NaN.

template <typename S>
bool infinity_or_nan(const euler_angles<S>& rot) constexpr noexcept

Returns true if any of the angles in a set of euler angles are infinity or NaN.

bool infinity_or_nan(half x) constexpr noexcept
#include <muu/half.h>

Returns true if a half-precision float is infinity or NaN.

template <typename S>
bool infinity_or_nan(const line_segment<S>& seg) constexpr noexcept

Returns true if any of the points in a line segment are infinity or NaN.

bool infinity_or_nan(float x) constexpr noexcept
#include <muu/math.h>

Returns true if a float is infinity or NaN.

bool infinity_or_nan(double x) constexpr noexcept
#include <muu/math.h>

Returns true if a double is infinity or NaN.

bool infinity_or_nan(long double x) constexpr noexcept
#include <muu/math.h>

Returns true if a long double is infinity or NaN.

bool infinity_or_nan(float128_t x) constexpr noexcept
#include <muu/math.h>

Returns true if a float128_t is infinity or NaN.

bool infinity_or_nan(_Float16 x) constexpr noexcept
#include <muu/math.h>

Returns true if a _Float16 is infinity or NaN.

#include <muu/math.h>
template <typename T>
bool infinity_or_nan(T x) constexpr noexcept

Returns true if an arithmetic value is infinity or NaN.

#include <muu/math.h>
template <typename T, size_t N>
bool infinity_or_nan(const T(&vals)[N]) constexpr noexcept

Returns true if any value in array is infinity or NaN.

#include <muu/math.h>
template <typename T, typename U, typename... V>
bool infinity_or_nan(const T& val1, const U& val2, const V&... vals) constexpr noexcept

Returns true if any of the given values is infinity or NaN.

template <typename S, size_t R, size_t C>
bool infinity_or_nan(const matrix<S, R, C>& m) constexpr noexcept

Returns true if any of the scalar components of a matrix are infinity or NaN.

template <typename S>
bool infinity_or_nan(const oriented_bounding_box<S>& bb) constexpr noexcept

Returns true if any of the scalar components of an oriented bounding box are infinity or NaN.

#include <muu/plane.h>
template <typename S>
bool infinity_or_nan(const plane<S>& p) constexpr noexcept

Returns true if any of the scalar components of a plane are infinity or NaN.

template <typename S>
bool infinity_or_nan(const quaternion<S>& q) constexpr noexcept

Returns true if any of the scalar components of a quaternion are infinity or NaN.

#include <muu/ray.h>
template <typename S>
bool infinity_or_nan(const ray<S>& r) constexpr noexcept

Returns true if any of the scalars in a ray are infinity or NaN.

template <typename S>
bool infinity_or_nan(const triangle<S>& tri) constexpr noexcept

Returns true if any of the points in a triangle are infinity or NaN.

template <typename S, size_t D>
bool infinity_or_nan(const vector<S, D>& v) constexpr noexcept

Returns true if any of the scalar components of a vector are infinity or NaN.