add int clamp to MathHelper

remotes/1695061714407202320/main
cosmonaut 2023-03-14 14:42:13 -07:00
parent 12e7e6b9c1
commit 3a6b73e637
1 changed files with 20 additions and 21 deletions

View File

@ -160,6 +160,26 @@ namespace MoonWorks.Math
return value; return value;
} }
/// <summary>
/// Restricts a value to be within a specified range.
/// </summary>
/// <param name="value">The value to clamp.</param>
/// <param name="min">
/// The minimum value. If <c>value</c> is less than <c>min</c>, <c>min</c>
/// will be returned.
/// </param>
/// <param name="max">
/// The maximum value. If <c>value</c> is greater than <c>max</c>, <c>max</c>
/// will be returned.
/// </param>
/// <returns>The clamped value.</returns>
public static int Clamp(int value, int min, int max)
{
value = (value > max) ? max : value;
value = (value < min) ? min : value;
return value;
}
/// <summary> /// <summary>
/// Calculates the absolute value of the difference of two values. /// Calculates the absolute value of the difference of two values.
/// </summary> /// </summary>
@ -400,27 +420,6 @@ namespace MoonWorks.Math
#region Internal Static Methods #region Internal Static Methods
// FIXME: This could be an extension! ClampIntEXT? -flibit
/// <summary>
/// Restricts a value to be within a specified range.
/// </summary>
/// <param name="value">The value to clamp.</param>
/// <param name="min">
/// The minimum value. If <c>value</c> is less than <c>min</c>, <c>min</c>
/// will be returned.
/// </param>
/// <param name="max">
/// The maximum value. If <c>value</c> is greater than <c>max</c>, <c>max</c>
/// will be returned.
/// </param>
/// <returns>The clamped value.</returns>
internal static int Clamp(int value, int min, int max)
{
value = (value > max) ? max : value;
value = (value < min) ? min : value;
return value;
}
internal static bool WithinEpsilon(float floatA, float floatB) internal static bool WithinEpsilon(float floatA, float floatB)
{ {
return System.Math.Abs(floatA - floatB) < MachineEpsilonFloat; return System.Math.Abs(floatA - floatB) < MachineEpsilonFloat;