blob: 16dc598c22826171757de1c7a5f4e1b5c5457ebe (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
#pragma once
#include <cmath>
namespace mbgl {
namespace util {
// Constrains n to the given range (including min, excluding max) via modular
// arithmetic.
template <typename T>
T wrap(T value, T min, T max) {
T d = max - min;
return std::fmod((std::fmod((value - min), d) + d), d) + min;
}
} // namespace util
} // namespace mbgl
|