Files
TrinityCore/dep/recastnavigation/Detour/Include/DetourMath.h
jackpoz 291ee6416c Dep/Recast: Validate input values more consistently and completely, including that points are finite
Merge https://github.com/recastnavigation/recastnavigation/pull/374 .
This should fix infinite loops happening with degenerated triangles with 0 area.
Fix #23028

(cherry picked from commit a75fbe527a)
2021-11-23 23:44:00 +01:00

25 lines
763 B
C++

/**
@defgroup detour Detour
Members in this module are wrappers around the standard math library
*/
#ifndef DETOURMATH_H
#define DETOURMATH_H
#include <math.h>
// This include is required because libstdc++ has problems with isfinite
// if cmath is included before math.h.
#include <cmath>
inline float dtMathFabsf(float x) { return fabsf(x); }
inline float dtMathSqrtf(float x) { return sqrtf(x); }
inline float dtMathFloorf(float x) { return floorf(x); }
inline float dtMathCeilf(float x) { return ceilf(x); }
inline float dtMathCosf(float x) { return cosf(x); }
inline float dtMathSinf(float x) { return sinf(x); }
inline float dtMathAtan2f(float y, float x) { return atan2f(y, x); }
inline bool dtMathIsfinite(float x) { return std::isfinite(x); }
#endif