26 lines
651 B
C
26 lines
651 B
C
|
#ifndef CPPMATH_H
|
||
|
#define CPPMATH_H
|
||
|
|
||
|
// cppmacro.h
|
||
|
// 10/12/2014 jichi
|
||
|
#include <cmath>
|
||
|
|
||
|
// The same as qMin
|
||
|
template <typename T>
|
||
|
inline const T &cpp_min(const T &a, const T &b) { return (a < b) ? a : b; }
|
||
|
|
||
|
// The same as qMax
|
||
|
template <typename T>
|
||
|
inline const T &cpp_max(const T &a, const T &b) { return (a < b) ? b : a; }
|
||
|
|
||
|
// The same as qBound
|
||
|
template <typename T>
|
||
|
inline const T &cpp_bound(const T &min, const T &val, const T &max)
|
||
|
{ return cpp_max(min, cpp_min(max, val)); }
|
||
|
|
||
|
// The same as qFuzzyCompare
|
||
|
inline bool cpp_fuzzy_compare(float p1, float p2)
|
||
|
{ return (abs(p1 - p2) <= 0.00001f * cpp_min(abs(p1), abs(p2))); }
|
||
|
|
||
|
#endif // CPPMATH_H
|