diff --git a/dist/lib/net40/NTH.dll b/dist/lib/net40/NTH.dll index 1229482..a210099 100644 Binary files a/dist/lib/net40/NTH.dll and b/dist/lib/net40/NTH.dll differ diff --git a/src/NTH/NTH/MathEx.cs b/src/NTH/NTH/MathEx.cs index 5060a33..0929185 100644 --- a/src/NTH/NTH/MathEx.cs +++ b/src/NTH/NTH/MathEx.cs @@ -64,6 +64,74 @@ public static long Pow(long x, long y) #endregion + #region Clamp + + public static byte Clamp(byte value, byte min, byte max) + { + if (value < min) + return min; + if (value > max) + return max; + return value; + } + + public static short Clamp(short value, short min, short max) + { + if (value < min) + return min; + if (value > max) + return max; + return value; + } + + public static int Clamp(int value, int min, int max) + { + if (value < min) + return min; + if (value > max) + return max; + return value; + } + + public static long Clamp(long value, long min, long max) + { + if (value < min) + return min; + if (value > max) + return max; + return value; + } + + public static float Clamp(float value, float min, float max) + { + if (value < min) + return min; + if (value > max) + return max; + return value; + } + + public static double Clamp(double value, double min, double max) + { + if (value < min) + return min; + if (value > max) + return max; + return value; + } + + public static decimal Clamp(decimal value, decimal min, decimal max) + { + if (value < min) + return min; + if (value > max) + return max; + return value; + } + + #endregion + + #region Min, 3 params /// Returns the smaller of three 32-bit signed integers.